Stream Types
Joseph W. Cutler, Christopher Watson, Emeka Nkurumeh, Phillip Hilliard, Harrison Goldstein, Caleb Stanford, Benjamin C. Pierce
摘要
We propose a rich foundational theory of typed data streams and stream transformers, motivated by two high-level goals. First, the type of a stream should be able to express complex sequential patterns of events over time. And second, it should describe the internal parallel structure of the stream, to support deterministic stream processing on parallel and distributed systems. To these ends, we introduce stream types , with operators capturing sequential composition, parallel composition, and iteration, plus a core calculus λ ST of transformers over typed streams that naturally supports a number of common streaming idioms, including punctuation, windowing, and parallel partitioning, as first-class constructions. λ ST exploits a Curry-Howardlike correspondence with an ordered variant of the Logic of Bunched Implication to program with streams compositionally and uses Brzozowski-style derivatives to enable an incremental, prefix-based operational semantics. To illustrate the programming style supported by the rich types of λ ST , we present a number of examples written in Delta, a prototype high-level language design based on λ ST .
问问这篇 Paper
智能体会读完全文。
Lune 把这篇 Paper 索引到了每一个公式,引用它的顶会 Paper 也一样。你提问,回答直接引用原文。
引用它的顶会 Paper5
- Flo: A Semantic Foundation for Progressive Stream ProcessingShadaj Laddad, Alvin Cheung, Joseph M. Hellerstein, Mae MilanoPOPL 2025 · 被引用 3 次
- Let It Flow: A Formally Verified Compilation Framework for Asynchronous DataflowZhengyao Lin, Yi Cai, Milijana SurbatovichPLDI 2026 · 被引用 1 次
- Functional Meaning for Parallel StreamingNick Rioux, Steve ZdancewicPLDI 2025 · 被引用 1 次
- Borrowing from Session TypesHannes Saffrich, Janek Spaderna, Peter Thiemann, Vasco T. VasconcelosOOPSLA 2025
- Homomorphism Calculus for User-Defined AggregationsZiteng Wang, Ruijie Fang, Linus Zheng, Dixin Tang 等OOPSLA 2025
它引用的顶会 Paper6
- DiffStream: differential output testing for stream processing programsKonstantinos Kallas, Filip Niksic, Caleb Stanford, Rajeev AlurOOPSLA 2020 · 被引用 18 次
- Diamonds are not forever: liveness in reactive programming with guarded recursionPatrick Bahr, Christian Uldal Graulund, Rasmus Ejlers MøgelbergPOPL 2021 · 被引用 16 次
- HStriver: A Very Functional Extensible Tool for the Runtime Verification of Real-Time Event StreamsFelipe Gorostiaga, César SánchezFM 2021 · 被引用 10 次
- A bunch of sessions: a propositions-as-sessions interpretation of bunched implications in channel-based concurrencyDan Frumin, Emanuele D'Osualdo, Bas van den Heuvel, Jorge A. PérezOOPSLA 2022 · 被引用 6 次
- Stream processing with dependency-guided synchronizationKonstantinos Kallas, Filip Niksic, Caleb Stanford, Rajeev AlurPPoPP 2022 · 被引用 4 次
相关 Paper
- StreamQL: a query language for processing streaming time seriesLingkun Kong, Konstantinos MamourasOOPSLA 2020 · 被引用 8 次
- Graphical Language with Delayed Trace: Picturing Quantum Computing with Finite MemoryTitouan Carette, Marc de Visme, Simon PerdrixLICS 2021 · 被引用 7 次
- Monoidal Streams for Dataflow ProgrammingElena Di Lavore, Giovanni de Felice, Mario RománLICS 2022 · 被引用 10 次
- The essence of online data processingPhilip Dexter, Yu David Liu, Kenneth ChiuOOPSLA 2022 · 被引用 3 次
- The leaky semicolon: compositional semantic dependencies for relaxed-memory concurrencyAlan Jeffrey, James Riely, Mark Batty, Simon Cooksey 等POPL 2022 · 被引用 21 次
