• Cite Icon19
  • https://doi.org/10.1007/978-3-319-47958-3_15Copy DOI Icon

Refined Environment Classifiers

  • Jan 1, 2016
  • Oleg Kiselyov +2 more
Show More
  • Abstract
  • Literature Map
  • References
  • Citations
  • Similar Papers
Abstract

Generating high-performance code and applying typical optimizations within the bodies of loops and functions involves moving or storing open code for later use, often in a different binding environment. There are ample opportunities for variables being left unbound or accidentally captured. It has been a tough challenge to statically ensure that by construction the generated code is nevertheless well-typed and well-scoped: all free variables in manipulated and stored code fragments shall eventually be bound, by their intended binders. We present the calculus for code generation with mutable state that for the first time achieves type-safety and hygiene without ad hoc restrictions. The calculus strongly resembles region-based memory management, but with the orders of magnitude simpler proofs. It employs the rightly abstract representation for free variables, which, like hypothesis in natural deduction, are free from the bureaucracy of syntax imposed by the type environment or numbering conventions. Although the calculus was designed for the sake of formalization and is deliberately bare-bone, it turns out easily implementable and not too bothersome for writing realistic program.

Similar Papers
  • Book Chapter
  • Citations7

Light Functional Interpretation

  • Jan 01, 2005
  • Mircea-Dan Hernest
  • Research Article
  • Citations127

Typed memory management via static capabilities

  • Jul 01, 2000
  • ACM Transactions on Programming Languages and Systems
  • David Walker +2
  • PDF
  • Research Article
  • Citations1

Explicit Effects and Effect Constraints in ReML

  • Jan 02, 2024
  • Proceedings of the ACM on Programming Languages
  • Martin Elsman
  • Conference Article
  • Citations2

A low overhead method for recovering unused memory inside regions

  • Jun 16, 2013
  • Matthew Davis +3
  • Research Article
  • Citations5

Hierarchical memory management for mutable state

  • Feb 10, 2018
  • ACM SIGPLAN Notices
  • Adrien Guatto +4
  • Conference Article
  • Citations20

Hierarchical memory management for mutable state

  • Feb 10, 2018
  • Adrien Guatto +4
  • Research Article
  • Citations1

Garbage collection safety for region-based memory management

  • Jan 18, 2003
  • ACM SIGPLAN Notices
  • Martin Elsman
  • Conference Article
  • Citations8

Region-based memory management in cyclone

  • Jan 01, 2002
  • Dan Grossman +5
  • Research Article
  • Citations14

The Echo Nest Musical Fingerprint

  • Jan 01, 2010
  • Columbia Academic Commons (Columbia University)
  • Daniel P W Ellis +3
  • Conference Article
  • Citations6

Abstract Syntax Tree based Unified Modeling Language to Object Oriented Code Conversion

  • Oct 10, 2014
  • Arun Veeramani +2
  • Conference Article
  • Citations23

Uncovering access control weaknesses and flaws with security-discordant software clones

  • Dec 09, 2013
  • François Gauthier +2
  • Conference Article
  • Citations76

Meta-programming with names and necessity

  • Sep 17, 2002
  • Aleksandar Nanevski
  • Conference Article
  • Citations15

Improving penalty function of R-tree over generalized index search tree possible way to advance performance of PostgreSQL cube extension

  • Mar 01, 2017
  • Andrey Borodin +3
  • PDF
  • Research Article
  • Citations27

Mœbius: metaprogramming using contextual types: the stage where system f can pattern match on itself

  • Jan 12, 2022
  • Proceedings of the ACM on Programming Languages
  • Junyoung Jang +3
  • Research Article
  • Citations10

Lyo code generator: A model-based code generator for the development of OSLC-compliant tool interfaces

  • Jan 01, 2016
  • SoftwareX
  • Jad El-Khoury
Cactus Communications logo

Copyright 2026 Cactus Communications. All rights reserved.