Export Citations
Save this search
Please login to be able to save your searches and receive alerts for new content matching your search criteria.
- research-articleAugust 2024
Parallel Algebraic Effect Handlers
Proceedings of the ACM on Programming Languages (PACMPL), Volume 8, Issue ICFPArticle No.: 262, Pages 756–788https://doi.org/10.1145/3674651Algebraic effect handlers support composable and structured control-flow abstraction. However, existing designs of algebraic effects often require effects to be executed sequentially. This paper studies parallel algebraic effect handlers. In particular, ...
- research-articleApril 2024
Reactamole: functional reactive molecular programming
Natural Computing: an international journal (NATC), Volume 23, Issue 3Pages 477–495https://doi.org/10.1007/s11047-024-09982-5AbstractChemical reaction networks (CRNs) are an important tool for molecular programming. This field is rapidly expanding our ability to deploy computer programs into biological systems for various applications. However, CRNs are also difficult to work ...
- ArticleNovember 2023
Types and Semantics for Extensible Data Types
AbstractDeveloping and maintaining software commonly requires (1) adding new data type constructors to existing applications, but also (2) adding new functions that work on existing data. Most programming languages have native support for defining data ...
P4R-Type: A Verified API for P4 Control Plane Programs
Proceedings of the ACM on Programming Languages (PACMPL), Volume 7, Issue OOPSLA2Article No.: 290, Pages 1935–1963https://doi.org/10.1145/3622866Software-Defined Networking (SDN) significantly simplifies programming, reconfiguring, and optimizing network devices, such as switches and routers. The de facto standard for programming SDN devices is the P4 language. However, the flexibility and ...
- research-articleSeptember 2023
A Java-like calculus with heterogeneous coeffects
AbstractWe propose a Java-like calculus where declared variables can be annotated by coeffects specifying constraints on their use, e.g., affinity or privacy levels. Such coeffects are heterogeneous, in the sense that different kinds of ...
-
- research-articleMay 2023
Contextual Linear Types for Differential Privacy
ACM Transactions on Programming Languages and Systems (TOPLAS), Volume 45, Issue 2Article No.: 8, Pages 1–69https://doi.org/10.1145/3589207Language support for differentially private programming is both crucial and delicate. While elaborate program logics can be very expressive, type-system-based approaches using linear types tend to be more lightweight and amenable to automatic checking and ...
- ArticleNovember 2022
Liquidity Analysis in Resource-Aware Programming
AbstractLiquidity is a liveness property of programs managing resources that pinpoints those programs not freezing any resource forever. We consider a simple stateful language whose resources are assets (digital currencies, non fungible tokens, etc.). ...
- ArticleSeptember 2022
- research-articleJuly 2022
Types for Complexity of Parallel Computation in Pi-calculus
ACM Transactions on Programming Languages and Systems (TOPLAS), Volume 44, Issue 3Article No.: 15, Pages 1–50https://doi.org/10.1145/3495529Type systems as a technique to analyse or control programs have been extensively studied for functional programming languages. In particular, some systems allow one to extract from a typing derivation a complexity bound on the program. We explore how to ...
- research-articleOctober 2023
Using Functional Reactive Programming to Define Safe Actor Systems
FTfJP '22: Proceedings of the 24th ACM International Workshop on Formal Techniques for Java-like ProgramsPages 4–10https://doi.org/10.1145/3611096.3611098Functional Reactive Programming (FRP) is a powerful abstraction for building deterministic concurrent systems. However, some programmers prefer a more imperative approach for certain tasks, and that approach is required to implement some imperative ...
- ArticleJanuary 2023
Understanding Algebraic Effect Handlers via Delimited Control Operators
AbstractAlgebraic effects and handlers are a powerful and convenient abstraction for user-defined effects. We aim to understand effect handlers through the lens of control operators, a similar but more well-studied tool for expressing effects. In this ...
- research-articleJanuary 2022
Mixed sessions
Theoretical Computer Science (TCSC), Volume 897, Issue CPages 23–48https://doi.org/10.1016/j.tcs.2021.08.005AbstractSession types describe patterns of interaction on communicating channels. Traditional session types include a form of choice whereby servers offer a collection of options, of which each client selects exactly one. Mixed choices blur ...
- ArticleNovember 2021
Time Warps, from Algebra to Algorithms
Relational and Algebraic Methods in Computer SciencePages 309–324https://doi.org/10.1007/978-3-030-88701-8_19AbstractGraded modalities have been proposed in recent work on programming languages as a general framework for refining type systems with intensional properties. In particular, continuous endomaps of the discrete time scale, or time warps, can be used to ...
- ArticleJuly 2021
- research-articleApril 2021
Polymorphic Iterable Sequential Effect Systems
ACM Transactions on Programming Languages and Systems (TOPLAS), Volume 43, Issue 1Article No.: 4, Pages 1–79https://doi.org/10.1145/3450272Effect systems are lightweight extensions to type systems that can verify a wide range of important properties with modest developer burden. But our general understanding of effect systems is limited primarily to systems where the order of effects is ...
- research-articleAugust 2020
A quick look at impredicativity
Proceedings of the ACM on Programming Languages (PACMPL), Volume 4, Issue ICFPArticle No.: 89, Pages 1–29https://doi.org/10.1145/3408971Type inference for parametric polymorphism is wildly successful, but has always suffered from an embarrassing flaw: polymorphic types are themselves not first class. We present Quick Look, a practical, implemented, and deployable design for impredicative ...
- research-articleJuly 2020
Contextual Types, Explained: Invited Tutorial
LICS '20: Proceedings of the 35th Annual ACM/IEEE Symposium on Logic in Computer SciencePages 35–37https://doi.org/10.1145/3373718.3394735Contextual objects characterize an object M together with the typing context Ψ in which it is meaningful. This idea is then also internalized within the type theory itself using the notion of a contextual type which pairs the type A of an object ...
- ArticleApril 2020
ConSORT: Context- and Flow-Sensitive Ownership Refinement Types for Imperative Programs
AbstractWe present ConSORT, a type system for safety verification in the presence of mutability and aliasing. Mutability requires strong updates to model changing invariants during program execution, but aliasing between pointers makes it difficult to ...