Julian Haas

dblp:334/9043 · DBLP profile ↗
← Back
2ranked-venue papers
2as first author
2since 2021 · last 2024
0000-0001-9959-5099ORCID · corroborated

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 2 · 2 first-author · 2 since 2021

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Software engineering, system software, and programming languages
1 paper
Programming languages and type systems · 33% Program analysis · 33% Program verification · 33%
Computer architecture, parallel and distributed computing, and storage systems
1 paper
Distributed systems · 100%

Topics — the 4 heaviest of 4, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Programming languages and type systems
programming models
0.812024
LoRe: A Programming Model for Verifiably Safe Local-first Software · ACM Trans. Program. Lang. Syst. 2024
Program verification
safety verification
0.812024
LoRe: A Programming Model for Verifiably Safe Local-first Software · ACM Trans. Program. Lang. Syst. 2024
Program analysis
static analysis
0.812024
LoRe: A Programming Model for Verifiably Safe Local-first Software · ACM Trans. Program. Lang. Syst. 2024
Distributed systems › consistency models
strong consistency
0.812024
LoRe: A Programming Model for Verifiably Safe Local-first Software · ACM Trans. Program. Lang. Syst. 2024

Methods — techniques the papers use, named apart from their topics

verification · 1.5static analysis · 1.5coordination · 1.5
YearPublicationVenuePosition
2024 LoRe: A Programming Model for Verifiably Safe Local-first Software
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.
Julian Haas, Ragnar Mogk, Elena Yanakieva, Annette Bieniusa, Mira Mezini
ACM Trans. Program. Lang. Syst.1
2023 LoRe: A Programming Model for Verifiably Safe Local-First Software (Extended Abstract)
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.
Julian Haas, Ragnar Mogk, Elena Yanakieva, Annette Bieniusa, Mira Mezini
ECOOP1