×

Closed types as a simple approach to save imperative multi-stage programming. (English) Zbl 0973.68037

Montanari, Ugo (ed.) et al., Automata, languages and programming. 27th international colloquium, ICALP 2000, Geneva, Switzerland, July 9-15, 2000. Proceedings. Berlin: Springer. Lect. Notes Comput. Sci. 1853, 25-36 (2000).
Summary: Safely adding computational effects to a multi-stage language has been an open problem. In previous work, a closed type constructor was used to provide a safe mechanism for executing dynamically generated code. This paper proposes a general notion of closed type as a simple approach to safely introducing computational effects into multistage languages. We demonstrate this approach formally in a core language called \(\text{Mini-ML}_{\text{ref}}^{\text{BN}}\). This core language combines safely multi-stage constructs and ML-style references. In addition to incorporating state, \(\text{Mini-ML}_{\text{ref}}^{\text{BN}}\) also embodies a number of technical improvements over previously proposed core languages for multi-stage programming.
For the entire collection see [Zbl 0941.00034].

MSC:

68N30 Mathematical aspects of software engineering (specification, verification, metrics, requirements, etc.)
68N15 Theory of programming languages
68N18 Functional programming and lambda calculus