English
Related papers

Related papers: Higher-order Rewriting for Executable Compiler Spe…

200 papers

We report on a one-semester compiler construction course based on the idea of implementing a small self-contained compiler for a small model language from scratch, not using other compiler construction frameworks. The course is built around…

Programming Languages · Computer Science 2022-07-27 Daniil Berezun , Dmitry Boulytchev

Constructor rewriting systems are said to be cons-free if any constructor term occurring in the rhs of a rule must be a subterm of the lhs of the rule. Roughly, such systems cannot build new data structures during their evaluation. In…

Logic in Computer Science · Computer Science 2017-11-10 Cynthia Kop , Jakob Grue Simonsen

We introduce skipping refinement, a new notion of correctness for reasoning about optimized reactive systems. Reasoning about reactive systems using refinement involves defining an abstract, high-level specification system and a concrete,…

Logic in Computer Science · Computer Science 2015-02-11 Mitesh Jain , Panagiotis Manolios

Current compiler optimization reports often present complex, technical information that is difficult for programmers to interpret and act upon effectively. This paper assesses the capability of large language models (LLM) to understand…

Programming Languages · Computer Science 2025-06-16 Peter Pirkelbauer , Chunhua Liao

Linear algebraic expressions are the essence of many computationally intensive problems, including scientific simulations and machine learning applications. However, translating high-level formulations of these expressions to efficient…

Distributed, Parallel, and Cluster Computing · Computer Science 2019-03-22 Dániel Berényi , András Leitereg , Gábor Lehel

We describe an intelligent assistant based on mining existing software repositories to help the developer interactively create checkable specifications of code. To be most useful we apply this at the subsystem level, that is chunks of code…

Software Engineering · Computer Science 2022-09-21 Steven P. Reiss

This paper describes a novel method of compiling ranked tagging rules into a deterministic finite-state device called a bimachine. The rules are formulated in the framework of regular rewrite operations and allow unrestricted regular…

Computation and Language · Computer Science 2007-05-23 Wojciech Skut , Stefan Ulrich , Kathrine Hammervold

Modern programming languages, most notably Rust, offer advanced linguistic constructs for building highly configurable software systems as aggregation of features -- identified by a configuration. However, they pose substantial challenges…

Programming Languages · Computer Science 2026-01-23 Federico Bruzzone , Walter Cazzola , Luca Favini

Constructor rewriting systems are said to be cons-free if, roughly, constructor terms in the right-hand sides of rules are subterms of constructor terms in the left-hand side; the computational intuition is that rules cannot build new data…

Computational Complexity · Computer Science 2016-05-02 Cynthia Kop , Jakob Grue Simonsen

As software becomes larger, programming languages become higher-level, and processors continue to fail to be clocked faster, we'll increasingly require compilers to reduce code bloat, eliminate abstraction penalties, and exploit interesting…

Programming Languages · Computer Science 2018-09-10 Nuno P. Lopes , John Regehr

We implement a compile toolchain from Q# to QASM 3.0 including a full-featured lexer and parser implementation, as well as a compiler that supports a subset of Q# features. The lexer, parser and compiler are shown to work with various input…

Programming Languages · Computer Science 2025-07-18 Marcus Edwards

Current quantum programming is dominated by low-level, circuit-centric approaches that limit the potential for compiler optimization. This work presents how a high-level programming construct provides compilers with the semantic information…

Quantum Physics · Physics 2025-10-29 Evandro C. R. Rosa , Jerusa Marchi , Eduardo I. Duzzioni , Rafael de Santiago

To take full advantage of a specific hardware target, performance engineers need to gain control on compilers in order to leverage their domain knowledge about the program and hardware. Yet, modern compilers are poorly controlled, usually…

Programming Languages · Computer Science 2024-09-10 Martin Paul Lücke , Oleksandr Zinenko , William S. Moses , Michel Steuwer , Albert Cohen

Those seeking to reproduce a computational experiment often need to manually look at the code to see how to build necessary libraries, configure parameters, find data, and invoke the experiment; it is not automatic. Automatic…

Software Engineering · Computer Science 2023-07-24 Samuel Grayson , Reed Milewicz , Joshua Teves , Daniel S. Katz , Darko Marinov

Computing systems have become increasingly complex with the emergence of heterogeneous hardware combining multicore CPUs and GPUs. These parallel systems exhibit tremendous computational power at the cost of increased programming effort.…

Distributed, Parallel, and Cluster Computing · Computer Science 2015-02-10 Michel Steuwer , Christian Fensch , Christophe Dubach

CHR is a declarative, concurrent and committed choice rule-based constraint programming language. We extend CHR with multiset comprehension patterns, providing the programmer with the ability to write multiset rewriting rules that can match…

Programming Languages · Computer Science 2014-06-10 Edmund S. L. Lam , Iliano Cervesato

Compiling high-level programs to target high-speed packet-processing pipelines is a challenging combinatorial optimization problem. The compiler must configure the pipeline's resources to match the high-level semantics of the program, while…

Networking and Internet Architecture · Computer Science 2022-11-22 Xiangyu Gao , Divya Raghunathan , Ruijie Fang , Tao Wang , Xiaotong Zhu , Anirudh Sivaraman , Srinivas Narayana , Aarti Gupta

The trend towards specialization of software and hardware - fuelled by the end of Moore's law and the still accelerating interest in domain-specific computing, such as machine learning - forces us to radically rethink our compiler designs.…

Programming Languages · Computer Science 2022-01-12 Michel Steuwer , Thomas Koehler , Bastian Köpcke , Federico Pizzuti

Albeit being a central notion of every programming language, formally and modularly reasoning about iteration proves itself to be a non-trivial feat, specially in the context of higher-order iteration. In this paper, we present a generic…

Programming Languages · Computer Science 2025-06-26 Ion Chirica , Mário Pereira

This dissertation explores classes of compiler optimization techniques that are applicable late in the compilation process, after all executable code for a program has been linked. I concentrate on techniques which, for various reasons,…

Programming Languages · Computer Science 2013-08-26 Clinton F. Goss