English
Related papers

Related papers: GNU epsilon -- an extensible programming language

200 papers

Sequential algorithms are popular for experimental design, enabling emulation, optimisation and inference to be efficiently performed. For most of these applications bespoke software has been developed, but the approach is general and many…

Computation · Statistics 2021-10-18 Matthew A. Fisher , Onur Teymur , Chris. J. Oates

Writing parallel codes is difficult and exhibits a fundamental trade-off between abstraction and performance. The high level language abstractions designed to simplify the complexities of parallelism make certain assumptions that impacts…

Programming Languages · Computer Science 2020-10-28 Nick Brown , Ludovic Capelli , J. Mark Bull

We study program refactoring while considering the language or even the programming paradigm as a parameter. We use typed functional programs, namely Haskell programs, as the specification medium for a corresponding refactoring framework.…

Programming Languages · Computer Science 2007-05-23 Ralf Laemmel

A range of methodologies and techniques are available to guide the design and implementation of language extensions and domain-specific languages. A simple yet powerful technique is based on source-to-source transformations interleaved…

Programming Languages · Computer Science 2013-02-01 Zoé Drey , José F. Morales , Manuel V. Hermenegildo

Generic programming is an effective methodology for developing reusable software libraries. Many programming languages provide generics and have features for describing interfaces, but none completely support the idioms used in generic…

Programming Languages · Computer Science 2007-08-17 Jeremy G. Siek , Andrew Lumsdaine

We introduce a new programming language for expressing reversibility, Energy-Efficient Language (Eel), geared toward algorithm design and implementation. Eel is the first language to take advantage of a partially reversible computation…

Programming Languages · Computer Science 2016-05-30 Nirvan Tyagi , Jayson Lynch , Erik D. Demaine

One way to write fast programs is to explore the potential parallelism and take advantage of the high number of cores available in microprocessors. This can be achieved by manually specifying which code executes on which thread, by using…

Distributed, Parallel, and Cluster Computing · Computer Science 2016-08-23 Alcides Fonseca , Raul Barbosa

The system PL permits the translation of abstract proofs of program correctness into programs in a variety of programming languages. A programming language satisfying certain axioms may be the target of such a translation. The system PL…

Software Engineering · Computer Science 2007-05-23 David A. Plaisted

We present a novel approach to construction of a formal semantics for a programming language. Our approach, using a parametric denotational semantics, allows the semantics to be easily extended to support new language features, and…

Programming Languages · Computer Science 2018-12-04 In-Ho Yi

Program optimization is the process of modifying software to execute more efficiently. Superoptimizers attempt to find the optimal program by employing significantly more expensive search and constraint solving techniques. Generally, these…

Machine Learning · Computer Science 2022-04-06 Alex Shypula , Pengcheng Yin , Jeremy Lacomis , Claire Le Goues , Edward Schwartz , Graham Neubig

We introduce IsalProgram (Instruction Set and Language for Programming), a novel assembly-like programming language with three distinctive theoretical properties: (1) it is a regular language in the sense of formal language theory, meaning…

Programming Languages · Computer Science 2026-05-19 Ezequiel López-Rubio

ECLAIR is a Prolog-based prototype system aiming to provide a functionally complete environment for the study, development and evaluation of programming language analysis and implementation tools. In this paper, we sketch the overall…

Programming Languages · Computer Science 2007-11-06 Roberto Bagnara , Patricia Hill , Enea Zaffanella

Recursive calls over recursive data are useful for generating probability distributions, and probabilistic programming allows computations over these distributions to be expressed in a modular and intuitive way. Exact inference is also…

Programming Languages · Computer Science 2023-03-28 David Chiang , Colin McDonald , Chung-chieh Shan

Delimited control is a powerful mechanism for programming language extension which has been recently proposed for Prolog (and implemented in SWI-Prolog). By manipulating the control flow of a program from inside the language, it enables the…

Programming Languages · Computer Science 2021-08-21 Alexander Vandenbroucke , Tom Schrijvers

Programming or scripting languages used in real-world systems are seldom designed with a formal semantics in mind from the outset. Therefore, developing well-founded analysis tools for these systems requires reverse-engineering a formal…

Programming Languages · Computer Science 2021-09-14 Sándor Bartha , James Cheney , Vaishak Belle

Programming languages are engineered languages that allow to instruct a machine and share algorithmic information; they have a great influence on the society since they underlie almost every information technology artefact, and they are at…

Programming Languages · Computer Science 2015-10-16 Silvia Crafa

All widely used and useful programming languages have a common problem. They restrict entry on the basis of knowledge of the English language. The lack of knowledge of English poses a major hurdle to many newcomers who do not have the…

Programming Languages · Computer Science 2025-10-13 Saad Ahmed Bazaz , Mirza Omer Beg

Experiments require human decisions in the design process, which in turn are reformulated and summarized as inputs into a system (computational or otherwise) to generate the experimental design. I leverage this system to promote a language…

Other Computer Science · Computer Science 2023-07-26 Emi Tanaka

Extreme Programming is the most prominent new, light-weight (or agile) methods, defined to contrast the current heavy-weight and partially overloaded object-oriented methods. It focuses on the core issues of software technology. One of its…

Software Engineering · Computer Science 2014-09-24 Bernhard Rumpe

Multi-constraint planning involves identifying, evaluating, and refining candidate plans while satisfying multiple, potentially conflicting constraints. Existing large language model (LLM) approaches face fundamental limitations in this…

Artificial Intelligence · Computer Science 2026-01-26 Derrick Goh Xin Deik , Quanyu Long , Zhengyuan Liu , Nancy F. Chen , Wenya Wang