English
Related papers

Related papers: Reimplementing the Wheel: Teaching Compilers with …

200 papers

Context: Compilation time is an important factor in the adaptability of a software project. Fast recompilation enables cheap experimentation with changes to a project, as those changes can be tested quickly. Separate and incremental…

Programming Languages · Computer Science 2020-02-17 Jeff Smits , Gabriël D. P. Konat , Eelco Visser

Theory-guided machine learning has demonstrated that including authentic domain knowledge directly into model design improves performance, sample efficiency and out-of-distribution generalisation. Yet the process by which a formal domain…

Machine Learning · Computer Science 2026-03-17 Asela Hevapathige , Yu Xia , Sachith Seneviratne , Saman Halgamuge

We present the design and implementation of a macro-embedding of a family of compiler intermediate languages, from a Scheme-like language to x86-64, into Racket. This embedding is used as part of a testing framework for a compilers course…

Programming Languages · Computer Science 2025-09-25 William J. Bowman

In this paper we outline how a simple compiler can be completely specified using higher order rewriting in all stages: parsing, analysis/optimization, and code emission, specifically using the crsx.sf.net system for a small declarative…

Logic in Computer Science · Computer Science 2011-02-21 Kristoffer H. Rose

Advances in natural language processing have resulted in large language models (LLMs) that are capable of generating understandable and sensible written text. Recent versions of these models, such as OpenAI Codex and GPT-3, can generate…

Software Engineering · Computer Science 2022-11-07 Stephen MacNeil , Andrew Tran , Arto Hellas , Joanne Kim , Sami Sarsa , Paul Denny , Seth Bernstein , Juho Leinonen

Code generation plays a crucial role in various tasks, such as code auto-completion and mathematical reasoning. Previous work has proposed numerous methods to enhance code generation performance, including integrating feedback from the…

Computation and Language · Computer Science 2025-05-30 Houxing Ren , Mingjie Zhan , Zhongyuan Wu , Aojun Zhou , Junting Pan , Hongsheng Li

A central strategy of synthetic biology is to understand the basic processes of living creatures through engineering organisms using the same building blocks. Biological machines described in terms of parts can be studied by computer…

Quantitative Methods · Quantitative Biology 2020-06-24 William Waites , Goksel Misirli , Matteo Cavaliere , Vincent Danos , Anil Wipat

Complex software-driven systems often interleave distributed, concurrent computation processes with physical interactions with the environment. Developing these systems more efficiently and safely can be achieved by employing actionable,…

Software Engineering · Computer Science 2025-11-20 Hiep Hong Trinh , Federico Ciccozzi , Abu Naser Masud , Marjan Sirjani , Mikael Sjödin

We introduce a novel paradigm in compiler optimization powered by Large Language Models with compiler feedback to optimize the code size of LLVM assembly. The model takes unoptimized LLVM IR as input and produces optimized IR, the best…

Programming Languages · Computer Science 2024-03-25 Dejan Grubisic , Chris Cummins , Volker Seeker , Hugh Leather

This work introduces self-infilling code generation, a general framework that incorporates infilling operations into auto-regressive decoding. Our approach capitalizes on the observation that recent infilling-capable code language models…

Programming Languages · Computer Science 2024-05-28 Lin Zheng , Jianbo Yuan , Zhi Zhang , Hongxia Yang , Lingpeng Kong

This paper proposes {\pi}, a formal semantic framework for compiler construction together with program validation. {\pi} is comprised by {\pi} Lib, a set of programming languages constructs inspired by Peter Mosses' Component-Based…

Programming Languages · Computer Science 2018-08-02 Christiano Braga

Embedded software is growing fast in size and complexity, leading to intimate mixture of complex architectures and complex control. Consequently, software specification requires modeling both structures and behaviour of systems.…

Programming Languages · Computer Science 2018-08-01 Paulius Juodisius , Atrisha Sarkar , Raghava Rao Mukkamala , Michal Antkiewicz , Krzysztof Czarnecki , Andrzej Wasowski

Systems now exist which are able to compile unification grammars into language models that can be included in a speech recognizer, but it is so far unclear whether non-trivial linguistically principled grammars can be used for this purpose.…

Computation and Language · Computer Science 2007-05-23 Manny Rayner , Beth Ann Hockey , Frankie James , Elizabeth O. Bratt , Sharon Goldwater , Mark Gawron

A C decompiler converts an executable into source code. The recovered C source code, once re-compiled, is expected to produce an executable with the same functionality as the original executable. With over twenty years of development, C…

Software Engineering · Computer Science 2023-11-30 Wai Kin Wong , Huaijin Wang , Zongjie Li , Zhibo Liu , Shuai Wang , Qiyi Tang , Sen Nie , Shi Wu

Source code is rarely written in isolation. It depends significantly on the programmatic context, such as the class that the code would reside in. To study this phenomenon, we introduce the task of generating class member functions given…

Computation and Language · Computer Science 2018-08-30 Srinivasan Iyer , Ioannis Konstas , Alvin Cheung , Luke Zettlemoyer

Traditionally, parsing has been a laborious and error-prone component of compiler development, and most parsers for full industrial programming languages are still written by hand. The author [Zim22] shows that automatic parser generation…

Programming Languages · Computer Science 2022-09-20 Joe Zimmerman

In this paper, we present a framework to generate compilers for embedded domain-specific languages (EDSLs). This framework provides facilities to automatically generate the boilerplate code required for building DSL compilers on top of…

Programming Languages · Computer Science 2018-08-07 Amir Shaikhha , Vojin Jovanovic , Christoph Koch

Large proprietary language models exhibit strong causal reasoning abilities that smaller open-source models struggle to replicate. We introduce a novel framework for distilling causal explanations that transfers causal reasoning skills from…

Computation and Language · Computer Science 2025-05-27 Aggrey Muhebwa , Khalid K. Osman

Code language models have emerged as useful tools for various programming tasks, yet they often struggle when it comes to complex ones. In this paper, we explore the potential of curriculum learning in enhancing the performance of these…

Machine Learning · Computer Science 2024-07-16 Marwa Naïr , Kamel Yamani , Lynda Said Lhadj , Riyadh Baghdadi

Practical guidance on training Large Language Models (LLMs) to leverage Code Interpreter across diverse tasks remains lacking. We present R1-Code-Interpreter, an extension of a text-only LLM trained via multi-turn supervised fine-tuning…

Artificial Intelligence · Computer Science 2026-03-05 Yongchao Chen , Yueying Liu , Junwei Zhou , Yilun Hao , Jingquan Wang , Yang Zhang , Na Li , Chuchu Fan