English
Related papers

Related papers: The Design and Implementation of an Extensible Sys…

200 papers

We introduce program splicing, a programming methodology that aims to automate the commonly used workflow of copying, pasting, and modifying code available online. Here, the programmer starts by writing a "draft" that mixes unfinished code,…

Programming Languages · Computer Science 2017-05-26 Yanxin Lu , Swarat Chaudhuri , Chris Jermaine , David Melski

We present SPL (Structured Prompt Language), a declarative SQL-inspired language that treats large language models as generative knowledge bases and their context windows as constrained resources. SPL provides explicit WITH BUDGET/LIMIT…

Computation and Language · Computer Science 2026-02-26 Wen G. Gong

Automated Machine Learning (AutoML) is a promising direction for democratizing AI by automatically deploying Machine Learning systems with minimal human expertise. The core technical challenge behind AutoML is optimizing the pipelines of…

Machine Learning · Computer Science 2023-05-26 Sebastian Pineda Arango , Josif Grabocka

Epistemic protocol specifications allow programs, for settings in which multiple agents act with incomplete information, to be described in terms of how actions are related to what the agents know. They are a variant of the knowledge-based…

Logic in Computer Science · Computer Science 2016-02-04 Xiaowei Huang , Ron van der Meyden

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

The term {\em meta-programming} refers to the ability of writing programs that have other programs as data and exploit their semantics. The aim of this paper is presenting a methodology allowing us to perform a correct termination analysis…

Programming Languages · Computer Science 2007-05-23 Alexander Serebrenik , Danny De Schreye

Undefined behavior in C often causes devastating security vulnerabilities. One practical mitigation is compartmentalization, which allows developers to structure large programs into mutually distrustful compartments with clearly specified…

Dynamically typed languages, like Erlang, allow developers to quickly write programs without explicitly providing any type information on expressions or function definitions. However, this feature makes those languages less reliable than…

Programming Languages · Computer Science 2018-09-14 Emanuele De Angelis , Fabio Fioravanti , Adrián Palacios , Alberto Pettorossi , Maurizio Proietti

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

Modern large language models (LLMs) are capable of interpreting input strings as instructions, or prompts, and carry out tasks based on them. Unlike traditional learners, LLMs cannot use back-propagation to obtain feedback, and condition…

Computation and Language · Computer Science 2026-03-17 Adrian de Wynter , Xun Wang , Qilong Gu , Si-Qing Chen

Large language models (LLMs) have the potential to revolutionize how we design and implement compilers and code translation tools. However, existing LLMs struggle to handle long and complex programs. We introduce LEGO-Compiler, a novel…

Programming Languages · Computer Science 2025-05-28 Shuoming Zhang , Jiacheng Zhao , Chunwei Xia , Zheng Wang , Yunji Chen , Xiaobing Feng , Huimin Cui

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

ECLiPSe is a Prolog-based programming system, aimed at the development and deployment of constraint programming applications. It is also used for teaching most aspects of combinatorial problem solving, e.g. problem modelling, constraint…

Programming Languages · Computer Science 2010-12-21 Joachim Schimpf , Kish Shen

Static program analysis is a valuable tool for any programming language that people write programs in. The prevalence of scripting languages in the world suggests programming language interpreters are relatively easy to write. Users of…

Programming Languages · Computer Science 2015-05-01 James Ian Johnson

Program synthesis strives to generate a computer program as a solution to a given problem specification, expressed with input-output examples or natural language descriptions. The prevalence of large language models advances the…

Machine Learning · Computer Science 2023-03-01 Erik Nijkamp , Bo Pang , Hiroaki Hayashi , Lifu Tu , Huan Wang , Yingbo Zhou , Silvio Savarese , Caiming Xiong

A circular program contains a data structure whose definition is self-referential or recursive. The use of such a definition allows efficient functional programs to be written and can avoid repeated evaluations and the creation of…

Data Structures and Algorithms · Computer Science 2022-06-28 Lloyd Allison

Binary decompilation plays an important role in software security analysis, reverse engineering, and malware understanding when source code is unavailable. However, existing decompilation techniques often fail to produce source code that…

Software Engineering · Computer Science 2026-04-14 Xiaohan Wang , Yuxin Hu , Kevin Leach

Programming language frameworks allow us to generate language tools (e.g., interpreters) just from a formal description of the syntax and semantics of a programming language. As these frameworks tend to be quite complex, an issue arises…

Programming Languages · Computer Science 2024-09-19 Jan Tušil , Jan Obdržálek

Compiler architects increasingly look to machine learning when building heuristics for compiler optimization. The promise of automatic heuristic design, freeing the compiler engineer from the complex interactions of program, architecture,…

Programming Languages · Computer Science 2020-12-04 Chris Cummins , Hugh Leather , Zacharias Fisches , Tal Ben-Nun , Torsten Hoefler , Michael O'Boyle

We present a novel approach how logic programming for expert systems can be declared directly in an object-oriented language.

Artificial Intelligence · Computer Science 2022-05-18 F. Lorenz , M. Günther