中文
相关论文

相关论文: From Push/Enter to Eval/Apply by Program Transform…

200 篇论文

Extensible variants improve the modularity and expressiveness of programming languages: they allow program functionality to be decomposed into independent blocks, and allow seamless extension of existing code with both new cases of existing…

编程语言 · 计算机科学 2016-12-28 J. Garrett Morris

Reusing verification artefacts requires identifying structural and semantic similarities across programs and their specifications. In this paper, we focus on graph construction as a foundational step toward this goal. We present a pipeline…

软件工程 · 计算机科学 2026-05-18 Arshad Beg , Diarmuid O'Donoghue , Rosemary Monahan

The use of non-deterministic functions is a distinctive feature of modern functional logic languages. The semantics commonly adopted is call-time choice, a notion that at the operational level is related to the sharing mechanism of lazy…

编程语言 · 计算机科学 2009-03-13 Francisco Javier Lopez-Fraguas , Juan Rodriguez-Hortala , Jaime Sanchez-Hernandez

We study the notion of extensibility in functional data types, as a new approach to the problem of decorating abstract syntax trees with additional sets of information. We observed the need for such extensibility while redesigning the data…

编程语言 · 计算机科学 2016-10-18 Shayan Najd , Simon Peyton Jones

McBride and Paterson introduced Applicative functors to Haskell, which are equivalent to the lax monoidal functors (with strength) of category theory. Applicative functors F are presented via idiomatic application $\_\circledast\_ : F (A…

编程语言 · 计算机科学 2024-01-26 Andreas Abel

We present a new approach for building source-to-source transformations that can run on multiple programming languages, based on a new way of representing programs called incremental parametric syntax. We implement this approach in Haskell…

编程语言 · 计算机科学 2018-10-03 James Koppel , Varot Premtoon , Armando Solar-Lezama

Large language models demonstrate the intriguing ability to perform unseen tasks via in-context learning. However, it remains unclear what mechanisms inside the model drive such task-level generalization. In this work, we approach this…

计算与语言 · 计算机科学 2026-03-05 Qinyuan Ye , Robin Jia , Xiang Ren

Several techniques for analysis and transformations are used in compilers. Among them, the peeling of loops for hoisting quasi-invariants can be used to optimize generated code, or simply ease developers' lives. In this paper, we introduce…

编程语言 · 计算机科学 2017-04-20 Jean-Yves Moyen , Thomas Rubiano , Thomas Seiller

We introduce APPL (Abstract Program Property Logic), a unifying Hoare-style logic that subsumes standard Hoare logic, incorrectness logic, and several variants of Hyper Hoare logic. APPL provides a principled foundation for abstract program…

计算机科学中的逻辑 · 计算机科学 2026-04-23 Paolo Baldan , Roberto Bruni , Francesco Ranzato , Diletta Rigo

The Functional Machine Calculus (FMC), recently introduced by the authors, is a generalization of the lambda-calculus which may faithfully encode the effects of higher-order mutable store, I/O and probabilistic/non-deterministic input.…

计算机科学中的逻辑 · 计算机科学 2023-02-07 Chris Barrett , Willem Heijltjes , Guy McCusker

We introduce the framework FreeCHR which formalizes the embedding of Constraint Handling Rules (CHR) into a host language, using the concept of initial algebra semantics from category theory. We hereby establish a high-level implementation…

编程语言 · 计算机科学 2025-07-17 Sascha Rechenberger , Thom Frühwirth

We present an extension to the $\mathtt{mathlib}$ library of the Lean theorem prover formalizing the foundations of computability theory. We use primitive recursive functions and partial recursive functions as the main objects of study, and…

计算机科学中的逻辑 · 计算机科学 2019-07-19 Mario Carneiro

Linear and substructural types are powerful tools, but adding them to standard functional programming languages often means introducing extra annotations and typing machinery. We propose a lightweight substructural type system design that…

编程语言 · 计算机科学 2015-02-18 Edward Gan , Jesse A. Tov , Greg Morrisett

The connections among natural language processing and argumentation theory are becoming stronger in the latest years, with a growing amount of works going in this direction, in different scenarios and applying heterogeneous techniques. In…

人工智能 · 计算机科学 2014-05-06 Elena Cabrio , Serena Villata

This is a motivating tutorial introduction to a semantic analysis of programming languages using a graphical language as the representation of terms, and graph rewriting as a representation of reduction rules. We show how the graphical…

编程语言 · 计算机科学 2021-02-05 Dan R. Ghica

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…

编程语言 · 计算机科学 2015-05-01 James Ian Johnson

Predictive models are fundamental to engineering reliable software systems. However, designing conservative, computable approximations for the behavior of programs (static analyses) remains a difficult and error-prone process for modern…

编程语言 · 计算机科学 2011-05-10 David Van Horn , Matthew Might

Logic programming languages present clear advantages in terms of declarativeness and conciseness. However, the ideas of logic programming have been met with resistance in other programming communities, and have not generally been adopted by…

编程语言 · 计算机科学 2026-01-08 Ivan Perez , Angel Herranz

The functional programming paradigm has a long and storied history, with its beginnings in the Lambda Calculus. In recent decades, pure functional languages such as Haskell have been shown to be highly effective in producing robust software…

计算机与社会 · 计算机科学 2025-12-04 Rajshekhar Sunderraman

In this paper we develop an algebraic approach to data integration by combining techniques from functional programming, category theory, and database theory. In our formalism, database schemas and instances are algebraic (multi-sorted…

数据库 · 计算机科学 2025-03-31 Patrick Schultz , Ryan Wisnesky