English
Related papers

Related papers: Polymorphic Type Inference for Dynamic Languages

200 papers

Non-idempotent intersection types provide quantitative information about typed programs, and have been used to obtain time and space complexity measures. Intersection type systems characterize termination, so restrictions need to be made in…

Logic in Computer Science · Computer Science 2023-05-05 Fábio Reis , Sandra Alves , Mário Florido

We present a miniKanren-based type inferencer for an educational programming language with first-class functions, S-expressions, and pattern-matching. The language itself is untyped which adds a certain specificity to the problem and…

Programming Languages · Computer Science 2024-09-02 Eridan Domoratskiy , Dmitry Boulytchev

We study subsystems of open induction which are strongly connected to methods of automated inductive theorem proving. Specifically, we consider systems obtained from restricting induction to atoms, literals, clauses, and dual clauses. We…

Logic · Mathematics 2025-09-09 Stefan Hetzl , Johannes Weiser

In a previous work, the first author extended to higher-order rewriting and dependent types the use of size annotations in types, a termination proof technique called type or size based termination and initially developed for ML-like…

Logic in Computer Science · Computer Science 2016-08-16 Frédéric Blanqui , Colin Riba

We present polygraphic programs, a subclass of Albert Burroni's polygraphs, as a computational model, showing how these objects can be seen as first-order functional programs. We prove that the model is Turing complete. We use polygraphic…

Logic in Computer Science · Computer Science 2008-10-07 Guillaume Bonfante , Yves Guiraud

In functional programming, datatypes a la carte provide a convenient modular representation of recursive datatypes, based on their initial algebra semantics. Unfortunately it is highly challenging to implement this technique in proof…

Logic in Computer Science · Computer Science 2015-09-11 Paolo Torrini , Tom Schrijvers

We extend the linear {\pi}-calculus with composite regular types in such a way that data containing linear values can be shared among several processes, if there is no overlapping access to such values. We describe a type reconstruction…

Programming Languages · Computer Science 2019-03-14 Luca Padovani

We bring forward a logical system of transition algebras that enhances many-sorted first-order logic using features from dynamic logics. The sentences we consider include compositions, unions, and transitive closures of transition…

Logic in Computer Science · Computer Science 2024-04-26 Hashimoto Go , Daniel Găină , Ionuţ Ţuţu

The depth-bounded fragment of the pi-calculus is an expressive class of systems enjoying decidability of some important verification problems. Unfortunately membership of the fragment is undecidable. We propose a novel type system,…

Logic in Computer Science · Computer Science 2015-02-24 Emanuele D'Osualdo , Luke Ong

We study a type checking algorithm that is able to type check a nontrivial subclass of functional programs that use features such as higher-rank, impredicative and second-order types. The only place the algorithm requires type annotation is…

Logic in Computer Science · Computer Science 2017-11-15 Peng Fu

There exist a number of results proving that for certain classes of interacting particle systems in population genetics, mutual invadability of types implies coexistence. In this paper we prove a sort of converse statement for a class of…

Probability · Mathematics 2013-03-21 Jan M. Swart

Type-level programming is an increasingly popular way to obtain additional type safety. Unfortunately, it remains a second-class citizen in the majority of industrially-used programming languages. We propose a new dependently-typed system…

Programming Languages · Computer Science 2020-11-17 Georg Stefan Schmid , Olivier Blanvillain , Jad Hamza , Viktor Kunčak

The subtyping rules for intersection types traditionally employ a transitivity rule (Barendregt et al. 1983), which means that subtyping does not satisfy the subformula property, making it more difficult to use in filter models for compiler…

Programming Languages · Computer Science 2020-05-19 Jeremy G. Siek

Context-free session types describe structured patterns of communication on heterogeneously-typed channels, allowing the specification of protocols unconstrained by tail recursion. The enhanced expressive power provided by non-regular…

Programming Languages · Computer Science 2023-09-21 Gil Silva , Andreia Mordido , Vasco T. Vasconcelos

Session types statically prescribe bidirectional communication protocols for message-passing processes and are in a Curry-Howard correspondence with linear logic propositions. However, simple session types cannot specify properties beyond…

Programming Languages · Computer Science 2020-01-27 Ankush Das , Frank Pfenning

Indexed languages are a classical notion in formal language theory, which has attracted attention in recent decades due to its role in higher-order model checking: They are precisely the languages accepted by order-2 pushdown automata. The…

Formal Languages and Automata Theory · Computer Science 2026-05-28 Richard Mandel , Corto Mascle , Georg Zetzsche

Formal language techniques have been used in the past to study autonomous dynamical systems. However, for controlled systems, new features are needed to distinguish between information generated by the system and input control. We show how…

Computation and Language · Computer Science 2007-05-23 J. F. Martins , J. A. Dente , A. J. Pires , R. Vilela Mendes

We introduce a formal meta-language for probabilistic programming, capable of expressing both programs and the type systems in which they are embedded. We are motivated here by the desire to allow an AGI to learn not only relevant knowledge…

Artificial Intelligence · Computer Science 2022-08-17 Jonathan Warrell , Alexey Potapov , Adam Vandervorst , Ben Goertzel

We present a type theory combining both linearity and dependency by stratifying typing rules into a level for logics and a level for programs. The distinction between logics and programs decouples their semantics, allowing the type system…

Programming Languages · Computer Science 2025-10-08 Qiancheng Fu , Hongwei Xi

We investigate, in the context of functional prototype-based lan- guages, a calculus of objects which might extend themselves upon receiving a message, a capability referred to by Cardelli as a self-inflicted operation. We present a sound…

Programming Languages · Computer Science 2018-08-14 Ciaffaglione Alberto , Di Gianantonio Pietro , Honsell Furio , Liquori Luigi