Heap recycling for lazy languages

Stefan Holdermans, Jurriaan Hage

Research output: Chapter in Book/Report/Conference proceedingConference contribution

6 Citations (Scopus)


Pure functional programming languages preclude destructive updates of heap-allocated data. In such languages, all newly computed algebraic values claim freshly allocated heap space, which typically causes idiomatic programs to be notoriously inefficient when compared to their imperative and impure counterparts. We partly overcome this shortcoming by considering a syntactically light language construct for enabling user-controlled in-place updates of algebraic values. The resulting calculus, that is based on a combination of type-based uniqueness and constructor analysis, is guaranteed to maintain referential transparency and is fully compatible with existing run-time systems for nonstrict, pure functional languages.
Original languageEnglish
Title of host publicationProceedings of the 2008 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
Subtitle of host publicationPEPM '08
EditorsJ. Hatcliff, R. Glück, O. de Moor
PublisherAssociation for Computing Machinery
Number of pages9
ISBN (Print)9781595939777
Publication statusPublished - 7 Jan 2008


  • Wiskunde en Informatica (WIIN)


Dive into the research topics of 'Heap recycling for lazy languages'. Together they form a unique fingerprint.

Cite this