Filters








199,603 Hits in 2.6 sec

Reversible Computation and Reversible Programming Languages

Tetsuo Yokoyama
2010 Electronical Notes in Theoretical Computer Science  
A reversible programming language supports deterministic forward and backward computation. This tutorial focuses on a high-level reversible programming language Janus.  ...  Janus is simple, yet powerful, and its constructs can serve as a model for designing reversible languages in general.  ...  This also holds in reversible programming languages and any unstructured reversible programs can be transformed into structured Janus programs (the Structured Reversible Program Theorem) [31] .  ... 
doi:10.1016/j.entcs.2010.02.007 fatcat:jkfz6vwpnncttkhnudpl4r6ze4

Reversible Execution and Visualization of Programs with LEONARDO

PIERLUIGI CRESCENZI, CAMIL DEMETRESCU, IRENE FINOCCHI, ROSSELLA PETRESCHI
2000 Journal of Visual Languages and Computing  
Moreover, it guarantees the complete reversibility of computations, bounded only by the potentiality of the working machine, and appears simple to be used.  ...  LEONARDO relies on a logic-based approach to visualization: a mapping between concrete and abstract data structures is declared through a logic visualization language and animations are conceived as reflecting  ...  We finally thank the anonymous referees: their comments were interesting and appropriate, and their suggestions were really useful for improving the quality of the paper.  ... 
doi:10.1006/jvlc.1999.0143 fatcat:aqukzqnil5bejee553dudh6qgm

Reversible Computing: Foundations and Software

Robert Glück, Tetsuo Yokoyama
2018 New generation computing  
Reversible computing has derived from fundamental questions on inverting programs and computations.  ...  The articles in this special issue reflect the broad spectrum of research on reversible computing, including topics such as programming languages and semantics, methods and algorithms, computation models  ...  to eventually encompass higher-order functional programming languages.  ... 
doi:10.1007/s00354-018-0035-5 fatcat:cblgwa6ffba6dbyx7kg7opztbm

Toward an Energy Efficient Language and Compiler for (Partially) Reversible Algorithms [chapter]

Nirvan Tyagi, Jayson Lynch, Erik D. Demaine
2016 Lecture Notes in Computer Science  
Eel is the first language to take advantage of a partially reversible computation model, where programs can be composed of both reversible and irreversible operations.  ...  We introduce a new programming language for expressing reversibility, Energy-Efficient Language (Eel), geared toward algorithm design and implementation.  ...  We thank Geronimo Mirano for useful discussion in differentiating and developing our language levels. We also thank Maria L. Messick and Licheng Rao for help in early programming of the Eel compiler.  ... 
doi:10.1007/978-3-319-40578-0_8 fatcat:qcb3adhs4zaabejfgu6aknad6m

Toward an Energy Efficient Language and Compiler for (Partially) Reversible Algorithms [article]

Nirvan Tyagi, Jayson Lynch, Erik D. Demaine
2016 arXiv   pre-print
Eel is the first language to take advantage of a partially reversible computation model, where programs can be composed of both reversible and irreversible operations.  ...  We introduce a new programming language for expressing reversibility, Energy-Efficient Language (Eel), geared toward algorithm design and implementation.  ...  We thank Geronimo Mirano for useful discussion in differentiating and developing our language levels. We also thank Maria L. Messick and Licheng Rao for help in early programming of the Eel compiler.  ... 
arXiv:1605.08475v1 fatcat:n4es5grnc5hvvptbu2vs2gmmye

可逆命令型言語の線形時間自己解釈系
A Linear-Time Self-Interpreter of a Reversible Imperative Language

Robert GLÜCK, Tetsuo YOKOYAMA
2016 Konpyuta sofutowea  
for future work on reversible computability and complexity theory as well as programming language theory for reversible computing.  ...  The latter data structures are dynamically allocated and enable reversible simulation of programs of arbitrary size and space consumption.  ...  Acknowledgments A preliminary version of this paper was presented at the 17th JSSST Workshop on Programming and Programming Languages (PPL2015).  ... 
doi:10.11309/jssst.33.3_108 fatcat:nqtjjn5uxrftjbfqjz45ambryq

A Minimalist's Reversible While Language

Robert GLÜCK, Tetsuo YOKOYAMA
2017 IEICE transactions on information and systems  
Owing to its simplicity, the language may also be used for educational purposes. key words: reversible programming language, reversible self-interpreter, while language, translation, program inversion  ...  The language is reduced to the core of a reversible language, with a single command for reversibly updating the store, a single reversible control-flow operator, a limited number of variables, and data  ...  A preliminary version of R-CORE and the translator was presented at the 17th Workshop on Programming and Programming Languages (PPL 2015).  ... 
doi:10.1587/transinf.2016edp7274 fatcat:3ipg2pgkvvedlmugdpwkuouxxu

Clean Translation of an Imperative Reversible Programming Language [chapter]

Holger Bock Axelsen
2011 Lecture Notes in Computer Science  
Our translation is both semantics preserving (correct), in that target programs compute exactly the same functions as their source programs (cleanly, with no extraneous garbage output), and efficient,  ...  The given translation methods are generic, and should be applicable to any (imperative) reversible source language described with reversible flowcharts and reversible updates.  ...  A preliminary version of this work was presented at the 2nd Workshop on Reversible Computing in Bremen, July 2010.  ... 
doi:10.1007/978-3-642-19861-8_9 fatcat:k3xzwvq3jzd5zfg2od2jntblyu

Reverse engineering and the computing profession

C. Cifuentes
2001 Computer  
programming language.  ...  Most available tools aid program comprehension and visualization, or parse legacy languages or dialects of existing languages, for which the language's specification may not even exist.  ... 
doi:10.1109/2.970595 fatcat:us72dpznsbgenbzgimcmlhbu3e

What Do Reversible Programs Compute? [chapter]

Holger Bock Axelsen, Robert Glück
2011 Lecture Notes in Computer Science  
Reversible computing is the study of computation models that exhibit both forward and backward determinism.  ...  transformations such as inversion, and general static prediction of program properties.  ...  The authors wish to thank Michael Kirkedal Thomsen for help with the figures and Tetsuo Yokoyama for discussions on RTM-computability.  ... 
doi:10.1007/978-3-642-19805-2_4 fatcat:httvxsi2vjgina3pd7krqznzti

Reversible Control of Robots [chapter]

Ulrik Pagh Schultz
2020 Lecture Notes in Computer Science  
Thanks to Gabriel Ciobanu for help in describing the related work on reversibility of massively parallel systems.  ...  There is for example a large design space for different programming language approaches, both in terms of the generality of the language and the means by which reversibility is achieved.  ...  of COST Action IC1405 on Reversible Computation -Extending Horizons of Computing. reversibility and real-world interaction that can be studied using this type of robot.  ... 
doi:10.1007/978-3-030-47361-7_8 fatcat:ula4oeu6ujccvf5lhwc2fmryqm

Software and Reversible Systems: A Survey of Recent Activities [chapter]

Claudio Antares Mezzina, Rudolf Schlatte, Robert Glück, Tue Haulund, James Hoey, Martin Holm Cservenka, Ivan Lanese, Torben Æ. Mogensen, Harun Siljak, Ulrik P. Schultz, Irek Ulidowski
2020 Lecture Notes in Computer Science  
We would also thank Irek Ulidowski (chair) and Ivan Lanese (vice-chair) who wisely have led this COST Action and the Management Committee (MC) who appointed us as leader and co-leader (respectively) of  ...  The WG2 has been led by Claudio Antares Mezzina and Rudolf Schlatte.  ...  Reversibility and Object-Oriented Languages Object-oriented (OO) programming uses classes as a means to encapsulate behaviour and state.  ... 
doi:10.1007/978-3-030-47361-7_2 fatcat:rvg4phvshvdm5owg2ih4kl52ty

Logical reversibility

P. Zuliani
2001 IBM Journal of Research and Development  
The method should be useful in the compilation of a general-purpose programming language for quantum computation.  ...  The method extends previous work on logical reversibility to that language and pertains to "demonic" nondeterminism and probability.  ...  This work was supported by a scholarship from the Engineering and Physical Sciences Research Council (UK) and by a scholarship from Università degli Studi di Perugia (Italy).  ... 
doi:10.1147/rd.456.0807 fatcat:ynqp7k3r2jclvi4d2fbcovjqya

Embracing the Laws of Physics: Three Reversible Models of Computation [article]

Jacques Carette, Roshan P. James, Amr Sabry
2018 arXiv   pre-print
We then consider a structured notion of data based on the Curry-Howard correspondence; here reversible deformations, as a programming language for witnessing type isomorphisms, comes from proof terms for  ...  One can think of data as modeled using topological spaces and programs as modeled by reversible deformations. We illustrate this idea using three notions of data.  ...  Acknowledgements We would like to thank the numerous students and colleagues who participated in various aspects of this research and who provided valuable feedback and constructive criticism.  ... 
arXiv:1811.03678v2 fatcat:norbif3a3zgdvn4ompwdw4lqn4

Differentiate Everything with a Reversible Embeded Domain-Specific Language [article]

Jin-Guo Liu, Taine Zhao
2021 arXiv   pre-print
Instead of checkpointing, we propose to use reverse computing to trace back states by designing and implementing a reversible programming eDSL, where a program can be executed bi-directionally without  ...  Reverse-mode automatic differentiation (AD) suffers from the issue of having too much space overhead to trace back intermediate computational states for back-propagation.  ...  In this paper, we first introduce the language design of a reversible programming language and introduce our reversible eDSL NiLang in Sec. 2.  ... 
arXiv:2003.04617v3 fatcat:ugevnpfttbgsbpdadaakzwb3v4
« Previous Showing results 1 — 15 out of 199,603 results