English
Related papers

Related papers: Resolution as Intersection Subtyping via Modus Pon…

200 papers

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…

Programming Languages · Computer Science 2020-08-18 Jana Dunfield

We define a type system with intersection types for an extension of lambda-calculus with unbind and rebind operators. In this calculus, a term with free variables, representing open code, can be packed into an "unbound" term, and passed…

Logic in Computer Science · Computer Science 2011-01-25 Mariangiola Dezani-Ciancaglini , Paola Giannini , Elena Zucca

Type classes are a popular tool for implementing generic algorithms and data structures without loss of efficiency, bridging the gap between parametric and ad-hoc polymorphism. Since their initial development in Haskell, they now feature…

Programming Languages · Computer Science 2025-03-03 Dimi Racordon , Eugene Flesselle , Cao Nguyen Pham

A type assignment system for lambda-calculus enjoys the principal typing property if every typable term M has a special typing, called principal, from which all typings for M can be obtained via suitable operations. The existence of…

Logic in Computer Science · Computer Science 2026-03-05 Daniele Pautasso , Simona Ronchi Della Rocca

By a numerical continuation method called a diagonal homotopy we can compute the intersection of two positive dimensional solution sets of polynomial systems. This paper proposes to use this diagonal homotopy as the key step in a procedure…

Numerical Analysis · Mathematics 2007-05-23 Andrew J. Sommese , Jan Verschelde , Charles W. Wampler

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

We study polymorphic type assignment systems for untyped lambda-calculi with effects, based on Moggi's monadic approach. Moving from the abstract definition of monads, we introduce a version of the call-by-value computational…

Logic in Computer Science · Computer Science 2020-02-10 Ugo de'Liguoro , Riccardo Treglia

We consider a general prescriptive type system with parametric polymorphism and subtyping for logic programs. The property of subject reduction expresses the consistency of the type system w.r.t. the execution model: if a program is…

Logic in Computer Science · Computer Science 2009-09-25 Jan-Georg Smaus , Francois Fages , Pierre Deransart

Randomized higher-order computation can be seen as being captured by a lambda calculus endowed with a single algebraic operation, namely a construct for binary probabilistic choice. What matters about such computations is the probability of…

Logic in Computer Science · Computer Science 2020-12-24 Ugo Dal Lago , Claudia Faggian , Simona Ronchi Della Rocca

We study an assignment system of intersection types for a lambda-calculus with records and a record-merge operator, where types are preserved both under subject reduction and expansion. The calculus is expressive enough to naturally…

Programming Languages · Computer Science 2015-03-18 Jan Bessai , Boris Düdder , Andrej Dudenhefner , Tzu-Chun Chen , Ugo de'Liguoro

Semantic subtyping is an approach to define subtyping relations for type systems featuring union and intersection type connectives. It has been studied only for strict languages, and it is unsound for non-strict semantics. In this work, we…

Programming Languages · Computer Science 2021-11-15 Tommaso Petrucciani , Giuseppe Castagna , Davide Ancona , Elena Zucca

Intersection types have been originally developed as an extension of simple types, but they can also be used for refining simple types. In this survey we concentrate on the latter option; more precisely, on the use of intersection types for…

Logic in Computer Science · Computer Science 2019-04-24 Paweł Parys

Intersection and union types denote conjunctions and disjunctions of properties. Using bidirectional typechecking, intersection types are relatively straightforward, but union types present challenges. For union types, we can case-analyze a…

Programming Languages · Computer Science 2021-03-24 Jana Dunfield

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

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

We study the semantics of an untyped lambda-calculus equipped with operators representing read and write operations from and to a global store. We adopt the monadic approach to model side-effects and treat read and write as algebraic…

Logic in Computer Science · Computer Science 2025-09-03 Ugo de'Liguoro , Riccardo Treglia

Prior work has extended the deep, logical connection between the linear sequent calculus and session-typed message-passing concurrent computation with equi-recursive types and a natural notion of subtyping. In this paper, we extend this…

Programming Languages · Computer Science 2017-02-09 Coşku Acay , Frank Pfenning

The importance of subtyping to enable a wider range of well-typed programs is undeniable. However, the interaction between subtyping, recursion, and polymorphism is not completely understood yet. In this work, we explore subtyping in a…

Programming Languages · Computer Science 2021-03-30 Ankush Das , Henry DeYoung , Andreia Mordido , Frank Pfenning

We present a type system that combines, in a controlled way, first-order polymorphism with intersectiontypes, union types, and subtyping, and prove its safety. We then define a type reconstruction algorithm that issound and terminating.…

Programming Languages · Computer Science 2023-11-20 Giuseppe Castagna , Mickaël Laurent , Kim Nguyen

Session types, types for structuring communication between endpoints in distributed systems, are recently being integrated into mainstream programming languages. In practice, a very important notion for dealing with such types is that of…

Programming Languages · Computer Science 2023-06-22 Mario Bravetti , Marco Carbone , Julien Lange , Nobuko Yoshida , Gianluigi Zavattaro
‹ Prev 1 2 3 10 Next ›