We introduce the abstract notions of monadic operational semantics, a small-step semantics where computational effects are modularly modeled by a monad, and type-and-effect system, including effect types whose interpretation lifts well-typedness to its monadic version. In this meta-theory, as usual in the non-monadic case, we can express progress and subject reduction, and provide a proof, given once and for all, that they imply soundness. The approach is illustrated on a lambda calculus with generic effects, equipped with an expressive type-and-effect system We provide proofs of progress and subject reduction, parametric on the interpretation of effect types. In this way, we obtain as instances many significant examples, such as checking exceptions, preventing/limiting non-determinism, constraining order/fairness of outputs. We also provide an extension with constructs to raise and handle computational effects, which can be instantiated to model different policies.
@InProceedings{dagnino_et_al:LIPIcs.ECOOP.2025.7, author = {Dagnino, Francesco and Giannini, Paola and Zucca, Elena}, title = {{Monadic Type-And-Effect Soundness}}, booktitle = {39th European Conference on Object-Oriented Programming (ECOOP 2025)}, pages = {7:1--7:31}, series = {Leibniz International Proceedings in Informatics (LIPIcs)}, ISBN = {978-3-95977-373-7}, ISSN = {1868-8969}, year = {2025}, volume = {333}, editor = {Aldrich, Jonathan and Silva, Alexandra}, publisher = {Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik}, address = {Dagstuhl, Germany}, URL = {https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.ECOOP.2025.7}, URN = {urn:nbn:de:0030-drops-233009}, doi = {10.4230/LIPIcs.ECOOP.2025.7}, annote = {Keywords: Effects, monads, type soundness} }
Feedback for Dagstuhl Publishing