Functional Meaning for Parallel Streaming

📅 2025-04-03
📈 Citations: 0
Influential: 0
📄 PDF
🤖 AI Summary
Non-determinism arising from race conditions and message reordering severely impedes programmability and verifiability in parallel and distributed programming. Existing approaches—such as LVars and CRDTs—rely on local ordering structures, limiting expressiveness for general-purpose functional programming. This paper introduces λ∨, the first core λ-calculus language to intrinsically integrate Scott’s approximation order from domain theory. It models computation as streams over partial orders and enforces monotonicity constraints to unify expressive functional abstractions with deterministic distributed semantics. Its denotational semantics is grounded in a computationally adequate Scott model, and we formally prove that monotonicity guarantees global determinism. λ∨ enables lock-free, composable, and verifiable parallel program construction, combining Datalog-like declarativity with the formal rigor of the λ-calculus. It establishes a novel formal paradigm for deterministic parallel computation.

Technology Category

Application Category

📝 Abstract
Nondeterminism introduced by race conditions and message reorderings makes parallel and distributed programming hard. Nevertheless, promising approaches such as LVars and CRDTs address this problem by introducing a partial order structure on shared state that describes how the state evolves over time. Monotone programs that respect the order are deterministic. Datalog-inspired languages incorporate this idea of monotonicity in a first-class way but they are not general-purpose. We would like parallel and distributed languages to be as natural to use as any functional language, without sacrificing expressivity, and with a formal basis of study as appealing as the lambda calculus. This paper presents $lambda_vee$, a core language for deterministic parallelism that embodies the ideas above. In $lambda_vee$, values may increase over time according to a streaming order and all computations are monotone with respect to that order. The streaming order coincides with the approximation order found in Scott semantics and so unifies the foundations of functional programming with the foundations of deterministic distributed computation. The resulting lambda calculus has a computationally adequate model rooted in domain theory. It integrates the compositionality and power of abstraction characteristic of functional programming with the declarative nature of Datalog. This version of the paper includes extended exposition and appendices with proofs.
Problem

Research questions and friction points this paper is trying to address.

Addressing nondeterminism in parallel and distributed programming
Developing a general-purpose deterministic parallel language
Unifying functional programming with deterministic distributed computation
Innovation

Methods, ideas, or system contributions that make the work stand out.

Uses a core language for deterministic parallelism
Monotone computations respect streaming order
Unifies functional programming with distributed computation
🔎 Similar Papers
No similar papers found.