中文
相关论文

相关论文: Typing constraint logic programs

200 篇论文

Designing and implementing typed programming languages is hard. Every new type system feature requires extending the metatheory and implementation, which are often complicated and fragile. To ease this process, we would like to provide…

编程语言 · 计算机科学 2020-08-18 Jana Dunfield

We present a type system and inference algorithm for a rich subset of JavaScript equipped with objects, structural subtyping, prototype inheritance, and first-class methods. The type system supports abstract and recursive objects, and is…

Recent years have seen growing interest in the retrofitting of type systems onto dynamically-typed programming languages, in order to improve type safety, programmer productivity, or performance. In such cases, type system developers must…

编程语言 · 计算机科学 2016-05-05 Esben Andreasen , Colin S. Gordon , Satish Chandra , Manu Sridharan , Frank Tip , Koushik Sen

We present a logically principled foundation for systematizing, in a way that works with any computational effect and evaluation order, SMT constraint generation seen in refinement type systems for functional programming languages. By…

编程语言 · 计算机科学 2023-08-21 Dimitrios J. Economou , Neel Krishnaswami , Jana Dunfield

Large language models (LLMs) have achieved notable success in code generation. However, they still frequently produce uncompilable output because their next-token inference procedure does not model formal aspects of code. Although…

机器学习 · 计算机科学 2025-05-09 Niels Mündler , Jingxuan He , Hao Wang , Koushik Sen , Dawn Song , Martin Vechev

Refinement types enable lightweight verification of functional programs. Algorithms for statically inferring refinement types typically work by reduction to solving systems of constrained Horn clauses extracted from typing derivations. An…

编程语言 · 计算机科学 2020-11-11 Zvonimir Pavlinovic , Yusen Su , Thomas Wies

We introduce constraints necessary for type checking a higher-order concurrent constraint language, and solve them with an incremental algorithm. Our constraint system extends rational unification by constraints x$\subseteq$ y saying that…

cmp-lg · 计算机科学 2008-02-03 Martin Mueller , Joachim Niehren

Dynamically typed object-oriented languages enable programmers to write elegant, reusable and extensible programs. However, with the current methodology for program verification, the absence of static type information creates significant…

编程语言 · 计算机科学 2015-01-13 Björn Engelmann , Ernst-Rüdiger Olderog , Nils Erik Flick

A linear parameter must be consumed exactly once in the body of its function. When declaring resources such as file handles and manually managed memory as linear arguments, a linear type system can verify that these resources are used…

编程语言 · 计算机科学 2022-07-25 Arnaud Spiwack , Csongor Kiss , Jean-Philippe Bernardy , Nicolas Wu , Richard Eisenberg

Type-preserving (or typed) compilation uses typing derivations to certify correctness properties of compilation. We have designed and implemented a type-preserving compiler for a simply-typed dialect of Prolog we call T-Prolog. The crux of…

编程语言 · 计算机科学 2022-06-29 Rose Bohrer , Karl Crary

Reasoning about the sensitivity of functions with respect to their inputs has interesting applications in various areas, such as differential privacy. In order to check and enforce sensitivity, several approaches have been developed,…

编程语言 · 计算机科学 2025-03-14 Damian Arquez , Matías Toro , Éric Tanter

When scripts in untyped languages grow into large programs, maintaining them becomes difficult. A lack of explicit type annotations in typical scripting languages forces programmers to must (re)discover critical pieces of design information…

编程语言 · 计算机科学 2011-06-15 Sam Tobin-Hochstadt , Matthias Felleisen

Here we define a new unification algorithm for terms interpreted in semantic domains denoted by a subclass of regular types here called deterministic regular types. This reflects our intention not to handle the semantic universe as a…

计算机科学中的逻辑 · 计算机科学 2025-02-14 João Barbosa , Mário Florido , Vítor Santos Costa

Type-and-effect systems help the programmer to organize data and computational effects in a program. While for traditional type systems expressive variants with sophisticated inference algorithms have been developed and widely used in…

编程语言 · 计算机科学 2025-10-24 Patrycja Balik , Szymon Jędras , Piotr Polesiuk

Termination properties of actual Prolog systems with constraints are fragile and difficult to analyse. The lack of the occurs-check, moded and overloaded arithmetical evaluation via is/2 and the occasional nontermination of finite domain…

编程语言 · 计算机科学 2009-03-13 Markus Triska , Ulrich Neumerkel , Jan Wielemaker

Commutativity has proven to be a powerful tool in reasoning about concurrent programs. Recent work has shown that a commutativity-based reduction of a program may admit simpler proofs than the program itself. The framework of…

编程语言 · 计算机科学 2023-11-07 Azadeh Farzan , Dominik Klumpp , Andreas Podelski

A long-standing shortcoming of statically typed functional languages is that type checking does not rule out pattern-matching failures (run-time match exceptions). Refinement types distinguish different values of datatypes; if a program…

编程语言 · 计算机科学 2020-09-22 Khurram A. Jafery , Jana Dunfield

Many object-oriented dynamic languages allow programmers to _extract methods_ from objects and treat them as functions. This allows for flexible programming patterns, but presents challenges for type systems. In particular, a simple…

编程语言 · 计算机科学 2021-11-23 Yuquan Fu , Sam Tobin-Hochstadt

Type soundness is an important property of modern programming languages. In this paper we explore the idea that "well-typed languages are sound": the idea that the appropriate typing discipline over language specifications guarantees that…

编程语言 · 计算机科学 2016-11-17 Matteo Cimini , Dale Miller , Jeremy G. Siek

Recent constraint logic programming (CLP) languages, such as HAL and Mercury, require type, mode and determinism declarations for predicates. This information allows the generation of efficient target code and the detection of many errors…

编程语言 · 计算机科学 2010-09-03 Maria Garcia de la Banda , Warwick Harvey , Kim Marriott , Peter J. Stuckey , Bart Demoen