English
Related papers

Related papers: Towards a Java Subtyping Operad

200 papers

The associative operad is a central structure in operad theory, defined on the linear span of the set of permutations. We build two analogs of the associative operad on the linear span of the set of packed words which turn out to be…

Combinatorics · Mathematics 2023-11-20 Samuele Giraudo , Yannic Vargas

This is a study of the computing power of the subtyping machine behind Kennedy and Pierce's nominal subtyping with variance. We depict the lattice of fragments of Kennedy and Pierce's type system and characterize their computing power in…

Programming Languages · Computer Science 2021-10-22 Ori Roth

We sketch a simple language of concurrent objects which explores the design space between type systems and continuous testing. In our language, programs are collections of communicating automata checked automatically for multiparty…

Programming Languages · Computer Science 2016-09-08 Roly Perera , Simon J. Gay

Typed operational semantics is a method developed by H. Goguen to prove meta-theoretic properties of type systems. This paper studies the metatheory of a type system with dependent record types, using the approach of typed operational…

Logic in Computer Science · Computer Science 2011-03-18 Yangyue Feng , Zhaohui Luo

Predicate subtypes provide an attractive mechanism to specify range constraints on variable declarations. This paper discusses how we add support for predicate subtypes to the VerCors program verifier. Our approach automatically generates…

Logic in Computer Science · Computer Science 2026-04-09 Tycho Dubbeling , Marieke Huisman , Ömer Şakar

We give a definition of an operad with general groups of equivariance suitable for use in any symmetric monoidal category with appropriate colimits. We then apply this notion to study the 2-category of algebras over an operad in Cat. We…

Category Theory · Mathematics 2014-02-28 Alexander S. Corner , Nick Gurski

Software systems are designed according to guidelines and constraints defined by business rules. Some of these constraints define the allowable or required values for data handled by the systems. These data constraints usually originate…

Software Engineering · Computer Science 2021-07-13 Juan Manuel Florez , Laura Moreno , Zenong Zhang , Shiyi Wei , Andrian Marcus

We investigate a technique from the literature, called the phantom-types technique, that uses parametric polymorphism, type constraints, and unification of polymorphic types to model a subtyping hierarchy. Hindley-Milner type systems, such…

Programming Languages · Computer Science 2007-05-23 Matthew Fluet , Riccardo Pucella

Since programming concepts do not match their syntactic representations, code search is a very tedious task. For instance in Java or C, array doesn't match [], so using "array" as a query, one cannot find what they are looking for. Often…

Information Retrieval · Computer Science 2019-04-01 Deepak Thukral , Darvesh Punia

We present a new perspective on the popular multi-class algorithmic techniques of one-vs-all and error correcting output codes. Rather than studying the behavior of these techniques for supervised learning, we establish a connection between…

Machine Learning · Computer Science 2016-11-28 Maria Florina Balcan , Travis Dick , Yishay Mansour

We propose to use orthologic as the basis for designing type systems supporting intersection, union, and negation types in the presence of subtyping assumptions. We show how to extend orthologic to support monotonic and antimonotonic…

Programming Languages · Computer Science 2025-07-15 Simon Guilloud , Viktor Kunčak

On the one side, network simulation frameworks are important tools for research and development activities to evaluate novel approaches in a time- and cost-efficient way. On the other side, Java as a highly platform-independent programming…

Software Engineering · Computer Science 2017-09-12 Henning Puttnies , Peter Danielis , Christian Koch , Dirk Timmermann

We define and study "row polymorphism" for a type system with set-theoretic types, specifically union, intersection, and negation types. We consider record types that embed row variables and define a subtyping relation by interpreting types…

Programming Languages · Computer Science 2025-09-29 Giuseppe Castagna , Loïc Peyrot

Operads may be represented as symmetric monoidal functors on a small symmetric monoidal category. We discuss the axioms which must be imposed on a symmetric monoidal functor in order that it give rise to a theory similar to the theory of…

Category Theory · Mathematics 2018-01-16 Ezra Getzler

Folklore is often saying "The Java memory model is broken." Therefore, several approaches have proposed repairs, only to find new programs exhibiting unexpected, unintuitive behavior or the model forbidding standard compiler optimizations.…

Programming Languages · Computer Science 2026-04-20 Lukas Panneke , Heike Wehrheim

This text, based on the author's Bachelor's thesis, introduces the theory of Algebraic Operads, a mathematical formalism that provides a unifying framework for modern algebra. We demonstrate how the fundamental theories of associative,…

Quantum Algebra · Mathematics 2025-11-11 Felicia Ferraioli

Structural subtyping and parametric polymorphism provide similar flexibility and reusability to programmers. For example, both features enable the programmer to provide a wider record as an argument to a function that expects a narrower…

Programming Languages · Computer Science 2023-09-12 Wenhao Tang , Daniel Hillerström , James McKinna , Michel Steuwer , Ornela Dardha , Rongxiao Fu , Sam Lindley

Deadlocks occur in concurrent programs as a consequence of cyclic resource acquisition between threads. In this paper we present a novel type system that guarantees deadlock freedom for a language with references, unstructured locking…

Programming Languages · Computer Science 2011-10-20 Prodromos Gerakios , Nikolaos Papaspyrou , Konstantinos Sagonas

Session types are a type discipline for describing and specifying communication behaviours of concurrent processes. Session subtyping, firstly introduced by Gay and Hole, is widely used for enlarging typability of session programs. This…

Programming Languages · Computer Science 2024-04-09 Thien Udomsrirungruang , Nobuko Yoshida

Types are an important part of any modern programming language, but we often forget that the concept of type we understand nowadays is not the same it was perceived in the sixties. Moreover, we conflate the concept of "type" in programming…

Programming Languages · Computer Science 2017-03-30 Simone Martini