Handling Higher-Order Effectful Operations with Judgemental Monadic Laws
By: Zhixuan Yang, Nicolas Wu
Potential Business Impact:
Makes computer programs more flexible and powerful.
This paper studies the design of programming languages with handlers of higher-order effectful operations -- effectful operations that may take in computations as arguments or return computations as output. We present and analyse a core calculus with higher-kinded impredicative polymorphism, handlers of higher-order effectful operations, and optionally general recursion. The distinctive design choice of this calculus is that handlers are carried by lawless raw monads, while the computation judgements still satisfy the monadic laws judgementally. We present the calculus with a logical framework and give denotational models of the calculus using realizability semantics. We prove closed-term canonicity and parametricity for the recursion-free fragment of the language using synthetic Tait computability and a novel form of the $\top\top$-lifting technique.
Similar Papers
An effectful object calculus
Programming Languages
Lets programmers build complex programs more easily.
Optimistic Higher-Order Superposition
Logic in Computer Science
Makes proving hard math problems much faster.
A Denotational Product Construction for Temporal Verification of Effectful Higher-Order Programs
Logic in Computer Science
Checks computer programs for mistakes automatically.