Reversible computing from a programming language perspective

Research output: Contribution to journalJournal articleResearchpeer-review

Standard

Reversible computing from a programming language perspective. / Glück, Robert; Yokoyama, Tetsuo.

In: Theoretical Computer Science, Vol. 953, 113429, 2023.

Research output: Contribution to journalJournal articleResearchpeer-review

Harvard

Glück, R & Yokoyama, T 2023, 'Reversible computing from a programming language perspective', Theoretical Computer Science, vol. 953, 113429. https://doi.org/10.1016/j.tcs.2022.06.010

APA

Glück, R., & Yokoyama, T. (2023). Reversible computing from a programming language perspective. Theoretical Computer Science, 953, [113429]. https://doi.org/10.1016/j.tcs.2022.06.010

Vancouver

Glück R, Yokoyama T. Reversible computing from a programming language perspective. Theoretical Computer Science. 2023;953. 113429. https://doi.org/10.1016/j.tcs.2022.06.010

Author

Glück, Robert ; Yokoyama, Tetsuo. / Reversible computing from a programming language perspective. In: Theoretical Computer Science. 2023 ; Vol. 953.

Bibtex

@article{6482269b30734e0297ddddc666180164,
title = "Reversible computing from a programming language perspective",
abstract = "Software plays a central role in all aspects of reversible computing systems, and a variety of reversible programming languages have been developed. This presentation highlights the principles and main ideas of reversible computing viewed from a programming language perspective with a focus on clean reversible languages. They are the building material for software that can reap the benefits of reversible hardware and interesting in their own right.Reversible computing is situated within programming languages in general, and the relevant concepts are elaborated, including computability, injectivization and reversibilization. Features representative for many reversible languages are presented, such as reversible updates, reversible iterations, and access to a program's inverse semantics. Metaprogramming methods of particular importance to reversible programming, are introduced, including program inversion and inverse interpretation. Our presentation is independent of a particular language, although primarily the reversible language, Janus, will be used in examples.",
author = "Robert Gl{\"u}ck and Tetsuo Yokoyama",
year = "2023",
doi = "10.1016/j.tcs.2022.06.010",
language = "English",
volume = "953",
journal = "Theoretical Computer Science",
issn = "0304-3975",
publisher = "Elsevier",

}

RIS

TY - JOUR

T1 - Reversible computing from a programming language perspective

AU - Glück, Robert

AU - Yokoyama, Tetsuo

PY - 2023

Y1 - 2023

N2 - Software plays a central role in all aspects of reversible computing systems, and a variety of reversible programming languages have been developed. This presentation highlights the principles and main ideas of reversible computing viewed from a programming language perspective with a focus on clean reversible languages. They are the building material for software that can reap the benefits of reversible hardware and interesting in their own right.Reversible computing is situated within programming languages in general, and the relevant concepts are elaborated, including computability, injectivization and reversibilization. Features representative for many reversible languages are presented, such as reversible updates, reversible iterations, and access to a program's inverse semantics. Metaprogramming methods of particular importance to reversible programming, are introduced, including program inversion and inverse interpretation. Our presentation is independent of a particular language, although primarily the reversible language, Janus, will be used in examples.

AB - Software plays a central role in all aspects of reversible computing systems, and a variety of reversible programming languages have been developed. This presentation highlights the principles and main ideas of reversible computing viewed from a programming language perspective with a focus on clean reversible languages. They are the building material for software that can reap the benefits of reversible hardware and interesting in their own right.Reversible computing is situated within programming languages in general, and the relevant concepts are elaborated, including computability, injectivization and reversibilization. Features representative for many reversible languages are presented, such as reversible updates, reversible iterations, and access to a program's inverse semantics. Metaprogramming methods of particular importance to reversible programming, are introduced, including program inversion and inverse interpretation. Our presentation is independent of a particular language, although primarily the reversible language, Janus, will be used in examples.

U2 - 10.1016/j.tcs.2022.06.010

DO - 10.1016/j.tcs.2022.06.010

M3 - Journal article

VL - 953

JO - Theoretical Computer Science

JF - Theoretical Computer Science

SN - 0304-3975

M1 - 113429

ER -

ID: 339333651