Partial evaluation and automatic program generation
Partial evaluation and automatic program generation
A modal analysis of staged computation
POPL '96 Proceedings of the 23rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Multi-stage programming with explicit annotations
PEPM '97 Proceedings of the 1997 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
A simple applicative language: mini-ML
LFP '86 Proceedings of the 1986 ACM conference on LISP and functional programming
PEPM '00 Proceedings of the 2000 ACM SIGPLAN workshop on Partial evaluation and semantics-based program manipulation
MetaML and multi-stage programming with explicit annotations
Theoretical Computer Science - Partial evaluation and semantics-based program manipulation
The Definition of Standard ML
Multi-Stage Programming: Axiomatization and Type Safety
ICALP '98 Proceedings of the 25th International Colloquium on Automata, Languages and Programming
Functor Categories and Two-Level Languages
FoSSaCS '98 Proceedings of the First International Conference on Foundations of Software Science and Computation Structure
Fast Binding-Time Analysis for Multi-Level Specialization
Proceedings of the Second International Andrei Ershov Memorial Conference on Perspectives of System Informatics
An Idealized MetaML: Simpler, and More Expressive
ESOP '99 Proceedings of the 8th European Symposium on Programming Languages and Systems
A temporal-logic approach to binding-time analysis
LICS '96 Proceedings of the 11th Annual IEEE Symposium on Logic in Computer Science
Multistage programming: its theory and applications
Multistage programming: its theory and applications
A computational formalization for partial evaluation
Mathematical Structures in Computer Science
Directions in Functional Programming for Real(-Time) Applications
EMSOFT '01 Proceedings of the First International Workshop on Embedded Software
Lightweight modular staging: a pragmatic approach to runtime code generation and compiled DSLs
GPCE '10 Proceedings of the ninth international conference on Generative programming and component engineering
Static analysis of multi-staged programs via unstaging translation
Proceedings of the 38th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Hobbits for Haskell: a library for higher-order encodings in functional programming languages
Proceedings of the 4th ACM symposium on Haskell
Shifting the stage: Staging with delimited control
Journal of Functional Programming
Staged computation with staged lexical scope
ESOP'12 Proceedings of the 21st European conference on Programming Languages and Systems
Type-specialized staged programming with process separation
Higher-Order and Symbolic Computation
Combinators for impure yet hygienic code generation
Proceedings of the ACM SIGPLAN 2014 Workshop on Partial Evaluation and Program Manipulation
Hi-index | 0.00 |
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 Mini-MLrefBN. This core language combines safely multi-stage constructs and ML-style references. In addition to incorporating state, Mini-MLrefBN also embodies a number of technical improvements over previously proposed core languages for multi-stage programming.