Explicit Effects and Effect Constraints in ReML

Research output: Contribution to journalJournal articleResearchpeer-review

Standard

Explicit Effects and Effect Constraints in ReML. / Elsman, Martin.

In: Proceedings of the ACM on Programming Languages, Vol. 8, No. POPL, 79, 2024, p. 2370-2394.

Research output: Contribution to journalJournal articleResearchpeer-review

Harvard

Elsman, M 2024, 'Explicit Effects and Effect Constraints in ReML', Proceedings of the ACM on Programming Languages, vol. 8, no. POPL, 79, pp. 2370-2394. https://doi.org/10.1145/3632921

APA

Elsman, M. (2024). Explicit Effects and Effect Constraints in ReML. Proceedings of the ACM on Programming Languages, 8(POPL), 2370-2394. [79]. https://doi.org/10.1145/3632921

Vancouver

Elsman M. Explicit Effects and Effect Constraints in ReML. Proceedings of the ACM on Programming Languages. 2024;8(POPL):2370-2394. 79. https://doi.org/10.1145/3632921

Author

Elsman, Martin. / Explicit Effects and Effect Constraints in ReML. In: Proceedings of the ACM on Programming Languages. 2024 ; Vol. 8, No. POPL. pp. 2370-2394.

Bibtex

@article{d7f1b6289042431385a2e6ed9d6e1736,
title = "Explicit Effects and Effect Constraints in ReML",
abstract = "An important aspect of building robust systems that execute on dedicated hardware and perhaps in constrained environments is to control and manage the effects performed by program code. We present ReML, a higher-order statically-typed functional language, which allows programmers to be explicit about the effects performed by program code and in particular effects related to memory management. Allowing programmers to be explicit about effects, the regions in which values reside, and the constraints under which code execute, makes programs robust to changes in the program source code and to compiler updates, including compiler optimisations. ReML is integrated with a polymorphic inference system that builds on top of region-inference, as it is implemented in the MLKit, a Standard ML compiler that uses region-based memory management as its primary memory management scheme.",
keywords = "Effect Systems, Memory Management, Parallelism, Region-inference",
author = "Martin Elsman",
note = "Publisher Copyright: {\textcopyright} 2024 Owner/Author.",
year = "2024",
doi = "10.1145/3632921",
language = "English",
volume = "8",
pages = "2370--2394",
journal = "Proceedings of the ACM on Programming Languages",
issn = "2475-1421",
publisher = "ACM",
number = "POPL",

}

RIS

TY - JOUR

T1 - Explicit Effects and Effect Constraints in ReML

AU - Elsman, Martin

N1 - Publisher Copyright: © 2024 Owner/Author.

PY - 2024

Y1 - 2024

N2 - An important aspect of building robust systems that execute on dedicated hardware and perhaps in constrained environments is to control and manage the effects performed by program code. We present ReML, a higher-order statically-typed functional language, which allows programmers to be explicit about the effects performed by program code and in particular effects related to memory management. Allowing programmers to be explicit about effects, the regions in which values reside, and the constraints under which code execute, makes programs robust to changes in the program source code and to compiler updates, including compiler optimisations. ReML is integrated with a polymorphic inference system that builds on top of region-inference, as it is implemented in the MLKit, a Standard ML compiler that uses region-based memory management as its primary memory management scheme.

AB - An important aspect of building robust systems that execute on dedicated hardware and perhaps in constrained environments is to control and manage the effects performed by program code. We present ReML, a higher-order statically-typed functional language, which allows programmers to be explicit about the effects performed by program code and in particular effects related to memory management. Allowing programmers to be explicit about effects, the regions in which values reside, and the constraints under which code execute, makes programs robust to changes in the program source code and to compiler updates, including compiler optimisations. ReML is integrated with a polymorphic inference system that builds on top of region-inference, as it is implemented in the MLKit, a Standard ML compiler that uses region-based memory management as its primary memory management scheme.

KW - Effect Systems

KW - Memory Management

KW - Parallelism

KW - Region-inference

U2 - 10.1145/3632921

DO - 10.1145/3632921

M3 - Journal article

AN - SCOPUS:85182257425

VL - 8

SP - 2370

EP - 2394

JO - Proceedings of the ACM on Programming Languages

JF - Proceedings of the ACM on Programming Languages

SN - 2475-1421

IS - POPL

M1 - 79

ER -

ID: 390399934