نتایج جستجو برای: subtyping

تعداد نتایج: 3609  

Journal: :Proceedings of the ACM on Programming Languages 2017

Journal: :CoRR 2015
Julien Lange Nobuko Yoshida

Subtyping is a crucial ingredient of session type theory and its applications, notably to programming language implementations. In this paper, we study effective ways to check whether a session type is a subtype of another by applying a characteristic formulae approach to the problem. Our core contribution is an algorithm to generate a modal μ-calculus formula that characterises all the superty...

2014
Asankhaya Sharma

Traits allow decomposing programs into smaller parts and mixins are a form of composition that resemble multiple inheritance. Unfortunately, in the presence of traits, programming languages like Scala give up on subtyping relation between objects. In this paper, we present a method to check subtyping between objects based on entailment in separation logic. We implement our method as a domain sp...

2009
Philip Wadler Robert Bruce Findler

We introduce the blame calculus, which adds the notion of blame from Findler and Felleisen’s contracts to a system similar to Siek and Taha’s gradual types and Flanagan’s hybrid types. We characterise where positive and negative blame can arise by decomposing the usual notion of subtype into positive and negative subtyping, and show that these recombine to yield naive subtyping. Naive typing ha...

1997
Erik Poll

It is a well-known problem that F { the polymorphic lambda calculus F extended with subtyping { does not provide so-called polymor-phic updates, and that the standard PER model for F does not provide interpretations for these operations. The polymorphic updates are interesting because they play an important role in some type-theoretic models of object-oriented languages. We present an extension...

2006
Andreas Abel

ion. LEQ-λ Γ, X :pκ ` F ≤ F ′ : κ′ Γ ` λXF ≤ λXF ′ : pκ→ κ′ Application. There are two kinds of congruence rules for application: one kind states that if functions F and F ′ are in the subtyping relation, so are their values F G and F ′G at a certain argument G. LEQ-FUN Γ ` F ≤ F ′ : pκ→ κ′ p−1Γ ` G : κ Γ ` F G ≤ F ′G : κ′ The other kind of rules concern the opposite case: If F is a function an...

2000
Jan-Georg Smaus François Fages Pierre Deransart

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"well-typed", then all derivations starting in a"well-typed"goal are again"well-typed". It is well-established that without subtyping, this property is readily obtai...

2004
Lorenzo Bettini Viviana Bono Betti Venneri

In sequential classand mixin-based settings, subtyping is essentially a relation on objects: no subtype relation is defined on classes and mixins, because otherwise there would be conflicts with the inheritance mechanism. Our goals are: (i) to show the usefulness of a subtyping relation extended to classes and mixins in the realm of mobile and distributed processess, where object-oriented code ...

2000
Heike Wehrheim

Subtyping relations for object-oriented formalisms describe relationships between superand subclasses which satisfy the substitutability requirement imposed on types and their subtypes. For active objects with an associated behaviour description subtyping relations also have to guarantee substitutability with respect to the dynamic behaviour of classes. In this paper, we give subtyping patterns...

1998
Jacek Chrzaszcz

The subtyping relation in the polymorphic second-order-calculus was introduced by John C. Mitchell in 1988. It is known that this relation is undecidable, but all known proofs of this fact strongly depend on the distributivity axiom. Nevertheless it has been conjectured that this axiom does not innuence the undecidability. The present paper shows undecidability of subtyping when we remove distr...

نمودار تعداد نتایج جستجو در هر سال

با کلیک روی نمودار نتایج را به سال انتشار فیلتر کنید