Region-based type systems provide programmer control over memory management without sacrificing type-safety. However, the type systems for region-based languages, such as the ML-Kit or Cyclone, are relatively complicated, so proving their soundness is nontrivial. This paper shows that the complication is in principle unnecessary. In particular, we show that plain old parametric polymorphism, as found in Haskell, is all that is needed. We substantiate this claim by giving a type- and meaning-preserving translation from a region-based language based on core Cyclone to a monadic variant of System F with region primitives whose types and operations are inspired by (and generalize) the ST monad.
CITATION STYLE
Fluet, M., & Morrisett, G. (2004). Monadic regions. In ACM SIGPLAN Notices (Vol. 39, pp. 103–114). Association for Computing Machinery. https://doi.org/10.1145/1016848.1016867
Mendeley helps you to discover research relevant for your work.