{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,6,9]],"date-time":"2026-06-09T08:41:16Z","timestamp":1780994476071,"version":"3.54.1"},"reference-count":0,"publisher":"Cambridge University Press (CUP)","issue":"4-5","license":[{"start":{"date-parts":[[2006,8,10]],"date-time":"2006-08-10T00:00:00Z","timestamp":1155168000000},"content-version":"unspecified","delay-in-days":40,"URL":"https:\/\/www.cambridge.org\/core\/terms"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["J. Funct. Prog."],"published-print":{"date-parts":[[2006,7]]},"abstract":"<jats:p>\n                    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, and proving their soundness is non-trivial. 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 variation of the region calculus of Tofte and Talpin to a monadic variant of\n                    <jats:styled-content style=\"e6\">System F<\/jats:styled-content>\n                    with region primitives whose types and operations are inspired by (and generalize) the\n                    <jats:styled-content style=\"e6\">ST<\/jats:styled-content>\n                    monad of Launchbury and Peyton Jones.\n                  <\/jats:p>","DOI":"10.1017\/s095679680600596x","type":"journal-article","created":{"date-parts":[[2006,8,10]],"date-time":"2006-08-10T06:38:30Z","timestamp":1155191910000},"page":"485-545","source":"Crossref","is-referenced-by-count":13,"title":["Monadic regions"],"prefix":"10.1017","volume":"16","author":[{"given":"MATTHEW","family":"FLUET","sequence":"first","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"GREG","family":"MORRISETT","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"56","published-online":{"date-parts":[[2006,8,10]]},"container-title":["Journal of Functional Programming"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/www.cambridge.org\/core\/services\/aop-cambridge-core\/content\/view\/S095679680600596X","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2026,5,26]],"date-time":"2026-05-26T22:35:52Z","timestamp":1779834952000},"score":1,"resource":{"primary":{"URL":"https:\/\/www.cambridge.org\/core\/product\/identifier\/S095679680600596X\/type\/journal_article"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2006,7]]},"references-count":0,"journal-issue":{"issue":"4-5","published-print":{"date-parts":[[2006,7]]}},"alternative-id":["S095679680600596X"],"URL":"https:\/\/doi.org\/10.1017\/s095679680600596x","relation":{},"ISSN":["0956-7968","1469-7653"],"issn-type":[{"value":"0956-7968","type":"print"},{"value":"1469-7653","type":"electronic"}],"subject":[],"published":{"date-parts":[[2006,7]]}}}