paperbot · PL 论文追踪

全部论文 待读 收藏

P2 LoRe: A Programming Model for Verifiably Safe Local-first Software

LoRe:一种用于可验证安全本地优先软件的编程模型
TOPLAS 46(1)2024匹配度 3/10 · 论文属于程序语言、静态分析与形式化验证方向,与用户对静态分析/验证的兴趣有弱关联;但其目标是 local-first 分布式应用的安全性与一致性协调,未涉及 LLM/Agent、浮点程序分析或贝叶斯程序分析,与核心交叉方向不匹配。引用 5 inbox
Julian Haas, Ragnar Mogk, Elena Yanakieva, Annette Bieniusa, Mira Mezini
crossref: 2026-09-10

AI 速览

一句话:提出 LoRe 编程模型与编译器,自动验证 local-first 应用的安全性质,并按需引入强一致性协调。

本地优先软件在本地管理私有数据,同时支持经不可靠网络连接的多方协作,并常与用户及外部环境交互;其去中心化与交互不可预测性使正确性推理十分困难,现有开发方案缺乏自动安全保证。LoRe 是一种编程模型与编译器:它把响应式编程的声明式数据流与静态分析、验证技术结合,精确判定会违反安全不变式的并发交互,并仅在需要时通过协调引入强一致性。作者提出形式化证明原则,并在原型实现中自动生成经过验证的可执行代码。评估表明,相比现有方法,LoRe 简化了安全本地优先软件的开发,且验证时间可接受。

问题
如何在网络不可靠、交互不可预测的去中心化 local-first 应用中,自动保证开发者给出的安全性质,而不是依赖人工推理并发交互。
方法
LoRe 将响应式声明式数据流与静态分析、验证技术结合,识别违反安全不变式的并发交互,并选择性地用协调实现强一致性,同时形式化证明原则并编译为经验证的可执行代码。
评估
通过原型实现与对比评估,显示其比现有方法更易开发安全 local-first 软件,且验证时间可接受。
原文摘要(Abstract)

Local-first software manages and processes private data locally while still enabling collaboration between multiple parties connected via partially unreliable networks. Such software typically involves interactions with users and the execution environment (the outside world). The unpredictability of such interactions paired with their decentralized nature make reasoning about the correctness of local-first software a challenging endeavor. Yet, existing solutions to develop local-first software do not provide support for automated safety guarantees and instead expect developers to reason about concurrent interactions in an environment with unreliable network conditions. We propose LoRe , a programming model and compiler that automatically verifies developer-supplied safety properties for local-first applications. LoRe combines the declarative data flow of reactive programming with static analysis and verification techniques to precisely determine concurrent interactions that violate safety invariants and to selectively employ strong consistency through coordination where required. We propose a formalized proof principle and demonstrate how to automate the process in a prototype implementation that outputs verified executable code. Our evaluation shows that LoRe simplifies the development of safe local-first software when compared to state-of-the-art approaches and that verification times are acceptable.

链接与引用

DOI 原文 · PDF(开放获取) ·

BibTeX
@article{paperbot2680,
  title = {LoRe: A Programming Model for Verifiably Safe Local-first Software},
  author = {Julian Haas and Ragnar Mogk and Elena Yanakieva and Annette Bieniusa and Mira Mezini},
  journal = {ACM Transactions on Programming Languages and Systems},
  volume = {46},
  number = {1},
  year = {2024},
  doi = {10.1145/3633769}
}