N Amin, T Rompf - Proceedings of the 44th ACM SIGPLAN Symposium …, 2017 - dl.acm.org
While type soundness proofs are taught in every graduate PL class, the gap between realistic languages and what is accessible to formal proofs is large. In the case of Scala, it …
T Rompf, N Amin - Proceedings of the 2016 ACM SIGPLAN International …, 2016 - dl.acm.org
Scala's type system unifies aspects of ML modules, object-oriented, and functional programming. The Dependent Object Types (DOT) family of calculi has been proposed as a …
It is well-known that many environment-based abstract machines can be seen as strategies in lambda calculi with explicit substitutions (ES). Recently, graphical syntaxes and linear …
D Biernacki, M Piróg, P Polesiuk… - Proceedings of the ACM …, 2019 - dl.acm.org
Proposed originally by Plotkin and Pretnar, algebraic effects and their handlers are a leading-edge approach to computational effects: exceptions, mutable state, nondeterminism …
O Danvy, LR Nielsen - BRICS Report Series, 2004 - brics.dk
The evaluation function of a reduction semantics (ie, a small-step operational semantics with an explicit representation of the reduction context) is canonically defined as the transitive …
Whether the number of β-steps in the λ-calculus can be taken as a reasonable time cost model (that is, polynomially related to the one of Turing machines) is a delicate problem …
Effect handlers are a modern and increasingly popular approach to structuring computational effects in functional programming languages. However, while their traditional …
An old and celebrated analogy says that writing programs is like proving theorems. This analogy has been productive in both directions, but in particular has demonstrated …
This document illustrates how functional implementations of formal semantics (structural operational semantics, reduction semantics, small-step and big-step abstract machines …