A copy of this work was available on the public web and has been preserved in the Wayback Machine. The capture dates from 2007; you can also visit the original URL.
The file type is application/pdf
.
Filters
Type Inference with Selftype
1995
BRICS Report Series
The metavariable self is fundamental in object-oriented languages.<br />Typing self in the presence of inheritance has been studied by Abadi<br />and Cardelli, Bruce, and others. ...
<br />Open until now is the problem of type inference with selftype.<br />In this paper we present a type inference algorithm for a type<br />system with selftype, recursive types, and subtyping. ...
One approach to giving self a special treatment is the use of selftype, "the type of self", which enables flexible type annotations that are impossible with recursive types and subtyping. ...
doi:10.7146/brics.v2i34.19937
fatcat:lxahkrcr5jcvfgmbf2v36gt7a4
Page 3854 of Mathematical Reviews Vol. , Issue 98F
[page]
1998
Mathematical Reviews
Summary: “The metavariable self is fundamental in object- oriented languages. Typing self in the presence of inheritance has been studied by Abadi and Cardelli, Bruce, and others. ...
“In this paper we present a simple type system with selftype, recursive types, and subtyping, and we prove that type inference is NP-complete. ...
Combining subsumption and binary methods
2001
Proceedings of the 28th ACM SIGPLAN-SIGACT symposium on Principles of programming languages - POPL '01
A set of views is attached to each object and a method can be invok ed either directly or via a view of the object. ...
We presen t an object-oriented calculus whic hallows arbitrary hiding of methods in protot ypes, even in the presence of binary methods and friend functions. ...
In this expression, x stands for self and stands for selftype. The expression evaluates into a new prototype x3. ...
doi:10.1145/360204.360233
dblp:conf/popl/Vouillon01
fatcat:dhn3brf7ajfbtlbuzvmrzhci6i
Bad coat, ripped genes: cryptic selection on coat colour varies with ontogeny in Soay sheep
2012
Molecular Ecology
Since 1985, there has been a steady decline in the frequency of sheep with a rare uniform ('self'-) pigmentation pattern as opposed to the more common wild-type pattern of dark upper body and pale belly ...
and ultimately to fitness. ...
Acknowledgement I would like to thank Hopi Hoekstra, Jennifer Carpenter and Sean Rogers for their comments on the manuscript. ...
doi:10.1111/j.1365-294x.2012.05560.x
pmid:22676073
fatcat:bdxzlrbxrrfcpjru3zq4lu4rza
Scalable component abstractions
2005
SIGPLAN notices
We identify three programming language abstractions for the construction of reusable components: abstract type members, explicit selftypes, and modular mixin composition. ...
We demonstrate this approach in two case studies, a subject/observer framework and a compiler front-end. ...
The only close analogue to selftype annotations in Scala is found in OCaml, where the type of self is an extensible record type which is explicitly given or inferred. ...
doi:10.1145/1103845.1094815
fatcat:eotba5bbyzcvlf34elfen5oqom
Bounded Polymorphism for Extensible Objects
[chapter]
1999
Lecture Notes in Computer Science
In this paper, we extend that work with explicit variance annotations and selftypes. The resulting calculus, called Ç · × , is a proper extension of Ç · ½ . Moreover it is proved to be type sound. ...
Type systems, design and semantics of object-oriented languages. ...
Selftypes allow one to give a type to methods that return self or an update of self (for instance, a move method of a point object will have type ÒØ selftype, where selftype refers to the type of self) ...
doi:10.1007/3-540-48167-2_11
fatcat:dfpkcflukjff5aqqensgnzr5xa
Type Inference for Nested Self Types
[chapter]
2004
Lecture Notes in Computer Science
We address the issue of decidability of the type inference problem for a type system of an object-oriented calculus with general selftypes. ...
The resulting system, despite its syntactical simplicity, is sufficiently complicated to merit the study of the intricate constraints emerging in the process of type reconstruction, and it can be considered ...
Indeed, the "tiny drop of selftype" of Palsberg and Jim can be encoded in a system without selftype, see [10] , meaning that it is a rather weak form of selftype. ...
doi:10.1007/978-3-540-24849-1_7
fatcat:7da3hhva65bavm2wfxhwceniby
Application of OOP type theory
1994
Proceedings of the ninth annual conference on Object-oriented programming systems, language, and applications - OOPSLA '94
Important strides toward developing expressive yet semantically sound type systems for object-oriented programming languages have recently been made by Cook, Bruce, Mitchell, and others. ...
We simultaneously address three of the more significant problems: adding a notion of global state, proving type-checking is decidable, and integrating the more widely implemented view that subclasses correspond ...
Section 2), NumObj should be NumObj gf Obj(SelfType) {dec: l+Nat, isZero: l-+Bool, diff: SelfType-+SelfType) The bound type variable Self Type refers to "the type of the object itself" -and indeed by the ...
doi:10.1145/191080.191086
dblp:conf/oopsla/EifrigSTZ94
fatcat:b5krdeqpx5dhdgjqgctb36qup4
Towards Concrete Syntax Patterns for Logic-based Transformation Rules
2008
Electronical Notes in Theoretical Computer Science
However, its use can be difficult and error-prone because it requires programmers to know the meta-level representation of the analysed language and to think and express their analyses in terms of this ...
Logic meta-programming in Prolog is a powerful way to express program analysis and transformation. ...
As a result, GenTL allows the definition of program analysis and transformation rules in a easy and reusable way. ...
doi:10.1016/j.entcs.2008.10.038
fatcat:2o2wrqenzjbfnbm7j3673bha2e
Type Inference for Variant Object Types
2002
Information and Computation
Type inference is known to be P-complete for firstorder systems of finite and recursive object types, and NP-complete for a restricted version of Self types. ...
The subtyping relation that arises for Split types is variant and, as a result, subtyping can be performed both in width and in depth. ...
ACKNOWLEDGMENTS We thank Craig Chambers, Patric Cousot, and Alan Mycroft for discussions and feedback at the "Workshop on Types and Abstract Interpretation" held in Padova, Italy, May 1999. ...
doi:10.1006/inco.2002.3091
fatcat:p44dofdyknf6hmyegml4bwdrhe
Type-Safe Covariant Specialization with Generalized Matching
2002
Information and Computation
We de ne a language LGM supporting generalized matching, its typing rules, and its operational semantics, and state a subject reduction theorem showing the soundness of the system. ...
In this paper we generalize it to deal with general covariance by allowing eld and method parameter types to change covariantly in matching types. ...
. , the type variable st stands for the type of self (sometimes denoted by a special keyword like \SelfType" or \MyType")): The subtyping ColorPoint <: Point does not hold because of the binary method ...
doi:10.1006/inco.2001.3048
fatcat:4qfgobza2bd2vpa24ad67gieeu
Should ML be Object-Oriented?
2002
Formal Aspects of Computing
] and its precursor, ML-ART [Rem94a], Object ML [ReR96a, ReR96b], and Moby [FiR99]. ...
its nature and effectiveness. ...
Class definitions use the special variable self for object self-reference and super for reference to superclass members, but unlike OCaml there is no selftype, and inheritance does not support method type ...
doi:10.1007/s001650200010
fatcat:ksfyslgzrfhcfd6viuxiym2nsa
Safe and decidable type checking in an object-oriented language
1993
Proceedings of the eighth annual conference on Object-oriented programming systems, languages, and applications - OOPSLA '93
PointClass = class ( self : SelfType 5 (PtInst, PtMeth), close: SelfType + My Type) ({x = 0, Y = 01, {mv(dx, dy: Int) = close(seZf gets {x = se1f.x + dx, y = seZf.y + dy}), getx = self.x, gety = self.y ...
This latter case is actually the most common, since we typically have access only to the instance variables of self (or objects representing updated versions of self), whose type is now SelfType. ...
doi:10.1145/165854.165865
dblp:conf/oopsla/BruceCMGDM93
fatcat:mcjokskqujcnbbctdhenij5nma
Scalable component abstractions
2005
Proceedings of the 20th annual ACM SIGPLAN conference on Object oriented programming systems languages and applications - OOPSLA '05
We identify three programming language abstractions for the construction of re-usable components: abstract type members, explicit selftypes and symmetric mixin composition. ...
We demonstrate this approach in two case studies, a subject/observer framework and a compiler front-end. ...
In our case, components correspond to classes, and the result of a component composition is always a class again, which might have abstract members and selftype annotations, and which might be composed ...
doi:10.1145/1094811.1094815
dblp:conf/oopsla/OderskyZ05
fatcat:agu6ci3yifc5do22rvsb4uppte
Relatedness of identities and emotional closeness with parents across and within cultures
2007
Asian Journal of Social Psychology
In both studies, within-cultural differences in emotional-and identityrelatedness with parents were also explored in terms of: (i) self-directed and other-directed value orientations; and (ii) self-types ...
Results involving different self-types and value orientations pointed to both crosscultural similarities and within-cultural diversity in the two domains of relatedness. ...
Acknowledgements We express our appreciation to Middle East Technical University and Turkish Academy of Sciences for the partial support they have provided.
End notes 1. ...
doi:10.1111/j.1467-839x.2007.00221.x
fatcat:m5kpavr735fflii423ytah3yna
« Previous
Showing results 1 — 15 out of 96 results