English
Related papers

Related papers: Introducing Yet Another REversible Language

200 papers

Algorithms are ways of mapping problems to solutions. An algorithm is invertible precisely when this mapping is injective, such that the initial problem can be uniquely inferred from its solution. While invertible algorithms can be…

Programming Languages · Computer Science 2022-12-08 Joachim Tilsted Kristensen , Robin Kaarsgaard , Michael Kirkedal Thomsen

Intensional sets are sets given by a property rather than by enumerating their elements. In previous work, we have proposed a decision procedure for a first-order logic language which provides Restricted Intensional Sets (RIS), i.e., a…

Programming Languages · Computer Science 2020-08-03 Maximiliano Cristiá , Andrea Fois , Gianfranco Rossi

Veryl, a hardware description language based on SystemVerilog, offers optimized syntax tailored for logic design, ensuring synthesizability and simplifying common constructs. It prioritizes interoperability with SystemVerilog, allowing for…

Hardware Architecture · Computer Science 2024-11-21 Naoya Hatta , Taichi Ishitani , Ryota Shioya

From the moment of their inception, languages for relational data have been described as sublanguages embedded in a host programming language. Rel is a new relational language whose key design goal is to go beyond this paradigm with…

A software model of a reversible processor ReveR with the stack is discussed in this paper. An architecture, the minimal set of elementary reversible operations together with an implementation of the basic control flow structures and…

Emerging Technologies · Computer Science 2011-06-01 Alexander Yu. Vlasov

We introduce the language QML, a functional language for quantum computations on finite types. Its design is guided by its categorical semantics: QML programs are interpreted by morphisms in the category FQC of finite quantum computations,…

Quantum Physics · Physics 2008-05-06 Thorsten Altenkirch , Jonathan Grattage

We describe the Aligator.jl software package for automatically generating all polynomial invariants of the rich class of extended P-solvable loops with nested conditionals. Aligator.jl is written in the programming language Julia and is…

Symbolic Computation · Computer Science 2018-08-17 Andreas Humenberger , Maximilian Jaroschek , Laura Kovács

We report on the experience of developing Merlin, a language server for the OCaml programming language in development since 2013. Merlin is a daemon that connects to your favourite text editor and provides services that require a…

Programming Languages · Computer Science 2018-10-03 Frédéric Bour , Thomas Refis , Gabriel Scherer

OpenJML is a tool for checking code and specifications of Java programs. We describe our experience building the tool on the foundation of JML, OpenJDK and Eclipse, as well as on many advances in specification-based software verification.…

Software Engineering · Computer Science 2014-04-29 David R. Cok

The field of implicit complexity has recently produced several bounded-complexity programming languages. This kind of language allows to implement exactly the functions belonging to a certain complexity class. We here present a…

Logic in Computer Science · Computer Science 2012-06-22 Aloïs Brunel , Antoine Madet

The paper introduces a modular extension (plugin) for Java language compilers and Integrated Development Environments (IDE) which adds operator overloading feature to Java language while preserving backward compatibility. The extension use…

Programming Languages · Computer Science 2014-06-17 Artem Melentyev

Reversible computing is a computational paradigm in which computations are deterministic in both the forward and backward direction, so that programs have well-defined forward and backward semantics. We investigate the formal semantics of…

Logic in Computer Science · Computer Science 2021-12-30 Robin Kaarsgaard , Mathys Rennela

When the inverse of an algorithm is well-defined -- that is, when its output can be deterministically transformed into the input producing it -- we say that the algorithm is invertible. While one can describe an invertible algorithm using a…

Programming Languages · Computer Science 2022-12-07 Joachim Tilsted Kristensen , Robin Kaarsgaard , Michael Kirkedal Thomsen

REC (Regular Expression Compiler) is a concise programming language which allows students to write programs without knowledge of the complicated syntax of languages like FORTRAN and ALGOL. The language is recursive and contains only four…

Computation and Language · Computer Science 2011-07-12 Gerardo Cisneros

Elixir is a functional programming language with dynamic typing. We propose a gradual type system that makes it possible to perform type-checking on a significant fragment of the language. An important feature of the type system is that it…

Programming Languages · Computer Science 2021-04-20 Mauricio Cassola , Agustín Talagorria , Alberto Pardo , Marcos Viera

Among numerical libraries capable of computing gradient descent optimization, JAX stands out by offering more features, accelerated by an intermediate representation known as Jaxpr language. However, editing the Jaxpr code is not directly…

Programming Languages · Computer Science 2024-03-19 Pierrick Pochelu

The polarized SILL programming language uniformly integrates functional programming and session-typed message-passing concurrency. It supports general recursion, asynchronous and synchronous communication, and higher-order programs that…

Programming Languages · Computer Science 2020-05-12 Ryan Kavanagh

The Java programming language contains many features that aid component-based software development (CBSD), such as interfaces, visibility levels, and strong support for encapsulation. However, component evolution often causes so-called…

Programming Languages · Computer Science 2011-06-10 Johan Nyström-Persson , Shinichi Honiden

Large Language Models (LLMs) like GPT-3.5-Turbo are increasingly used to assist software development, yet they often produce incomplete code or incorrect imports, especially when lacking access to external or project-specific documentation.…

Paisley is an extensible lightweight embedded domain-specific language for nondeterministic pattern matching in Java. Using simple APIs and programming idioms, it brings the power of functional-logic processing of arbitrary data objects to…

Programming Languages · Computer Science 2017-01-04 Baltasar Trancón y Widemann , Markus Lepper