Witnessing purity, constancy and mutability

Ben Lippmeier*

*Corresponding author for this work

    Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

    4 Citations (Scopus)

    Abstract

    Restricting destructive update to values of a distinguished reference type prevents functions from being polymorphic in the mutability of their arguments. This restriction makes it easier to reason about program behaviour during transformation, but the lack of polymorphism reduces the expressiveness of the language. We present a System-F style core language that uses dependently kinded proof witnesses to encode information about the mutability of values and the purity of computations. We support mixed strict and lazy evaluation, and use our type system to ensure that only computations without visible side effects are suspended.

    Original languageEnglish
    Title of host publicationProgramming Languages and Systems - 7th Asian Symposium, APLAS 2009, Proceedings
    Pages95-110
    Number of pages16
    DOIs
    Publication statusPublished - 2009
    Event7th Asian Symposium on Programming Languages and Systems, APLAS 2009 - Seoul, Korea, Republic of
    Duration: 14 Dec 200916 Dec 2009

    Publication series

    NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
    Volume5904 LNCS
    ISSN (Print)0302-9743
    ISSN (Electronic)1611-3349

    Conference

    Conference7th Asian Symposium on Programming Languages and Systems, APLAS 2009
    Country/TerritoryKorea, Republic of
    CitySeoul
    Period14/12/0916/12/09

    Fingerprint

    Dive into the research topics of 'Witnessing purity, constancy and mutability'. Together they form a unique fingerprint.

    Cite this