English
Related papers

Related papers: Java & Lambda: a Featherweight Story

200 papers

The lambda-cube is a famous pure type system (PTS) cube of eight powerful explicit type systems that include the simple, polymorphic and dependent type theories. The lambda-cube only types Strongly Normalising (SN) terms but not all of…

Logic in Computer Science · Computer Science 2024-05-02 Fairouz Kamareddine , Joe Wells

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…

Programming Languages · Computer Science 2016-10-19 Satish Chandra , Colin S. Gordon , Jean-Baptiste Jeannin , Cole Schlesinger , Manu Sridharan , Frank Tip , Youngil Choi

One of the aims of Implicit Computational Complexity is the design of programming languages with bounded computational complexity; indeed, guaranteeing and certifying a limited resources usage is of central importance for various aspects of…

Logic in Computer Science · Computer Science 2014-10-24 Erika De Benedetti , Simona Ronchi Della Rocca

While developing their software, professional object-oriented (OO) software developers keep in their minds an image of the subtyping relation between types in their software. The goal of this paper is to present an observation about the…

Programming Languages · Computer Science 2018-01-01 Moez A. AbdelGawad

Existing state-of-the-art feature matchers capture long-range dependencies with Transformers but are hindered by high spatial complexity, leading to demanding training and highlatency inference. Striking a better balance between performance…

Computer Vision and Pattern Recognition · Computer Science 2025-03-06 Xiaoyong Lu , Songlin Du

The aim of the paper is to provide solid foundations for a programming paradigm natively supporting the creation and manipulation of cyclic data structures. To this end, we describe coFJ, a Java-like calculus where objects can be infinite…

Programming Languages · Computer Science 2020-05-29 Davide Ancona , Pietro Barbieri , Francesco Dagnino , Elena Zucca

Grammar convergence is a method that helps discovering relationships between different grammars of the same language or different language versions. The key element of the method is the operational, transformation-based representation of…

Programming Languages · Computer Science 2011-07-20 Ralf Lämmel , Vadim Zaytsev

We present Jamba, a new base large language model based on a novel hybrid Transformer-Mamba mixture-of-experts (MoE) architecture. Specifically, Jamba interleaves blocks of Transformer and Mamba layers, enjoying the benefits of both model…

Interfaces are widely used as central design elements of Java applications. Although interfaces are abstract types similar to abstract classes, the usage of interfaces in Java applications may considerably differ from the usage of abstract…

Software Engineering · Computer Science 2014-08-01 Hani Abdeen , Osama Shata

Paisley is an extensible lightweight embedded domain-specific language for nondeterministic pattern matching in Java. Using simple APIs and programming idioms, it brings the power of functional-logic processing of arbitrary data objects to…

Programming Languages · Computer Science 2017-01-04 Baltasar Trancón y Widemann , Markus Lepper

Lambda calculus is the basis of functional programming and higher order proof assistants. However, little is known about combinatorial properties of lambda terms, in particular, about their asymptotic distribution and random generation.…

Logic in Computer Science · Computer Science 2013-07-05 Katarzyna Grygiel , Pierre Lescanne

The Resource $\lambda$-calculus is a variation of the $\lambda$-calculus where arguments can be superposed and must be linearly used. Hence it is a model for linear and non-deterministic programming languages, and the target language of…

Logic in Computer Science · Computer Science 2015-02-18 Marco Solieri

Multi types---aka non-idempotent intersection types---have been used to obtain quantitative bounds on higher-order programs, as pioneered by de Carvalho. Notably, they bound at the same time the number of evaluation steps and the size of…

Programming Languages · Computer Science 2018-07-09 Beniamino Accattoli , Stéphane Graham-Lengrand , Delia Kesner

We extend intersection types to a computational $\lambda$-calculus with algebraic operations \`a la Plotkin and Power. We achieve this by considering monadic intersections, whereby computational effects appear not only in the operational…

Programming Languages · Computer Science 2024-01-24 Francesco Gavazzo , Riccardo Treglia , Gabriele Vanoni

We introduce a call-by-name lambda-calculus $\lambda Jn$ with generalized applications which is equipped with distant reduction. This allows to unblock $\beta$-redexes without resorting to the standard permutative conversions of generalized…

Logic in Computer Science · Computer Science 2024-08-07 José Espírito Santo , Delia Kesner , Loïc Peyrot

We revisit the Vectorial Lambda Calculus, a typed version of Lineal. Vectorial (as well as Lineal) has been originally designed for quantum computing, as an extension to System F where linear combinations of lambda terms are also terms and…

Logic in Computer Science · Computer Science 2021-05-17 Francisco Noriega , Alejandro Díaz-Caro

Intersection types are an essential tool in the analysis of operational and denotational properties of lambda-terms and functional programs. Among them, non-idempotent intersection types provide precise quantitative information about the…

Logic in Computer Science · Computer Science 2019-11-06 Thomas Ehrhard

The calculus of Dependent Object Types (DOT) has enabled a more principled and robust implementation of Scala, but its support for type-level computation has proven insufficient. As a remedy, we propose $F^\omega_{..}$, a rigorous…

Programming Languages · Computer Science 2021-07-06 Sandro Stucki , Paolo G. Giarrusso

Typeclasses provide an elegant and effective way of managing ad-hoc polymorphism in both programming languages and interactive proof assistants. However, the increasingly sophisticated uses of typeclasses within proof assistants, especially…

Programming Languages · Computer Science 2020-01-22 Daniel Selsam , Sebastian Ullrich , Leonardo de Moura

We introduce a Curry-Howard correspondence for a large class of intermediate logics characterized by intuitionistic proofs with non-nested applications of rules for classical disjunctive tautologies (1-depth intermediate proofs). The…

Logic in Computer Science · Computer Science 2020-04-22 Federico Aschieri , Agata Ciabattoni , Francesco A. Genco