|
Michele Bugliesi and Santiago M. Pericas-Geertsen
Depth subtyping and type inference for object
calculi
In Proc. Seventh Workshop on Foundations of Object-Oriented
Languages, Boston, Mass., U.S.A., 2000
We present a new type system based on the notion of
Split types. In this system, every method is
assigned two types, namely, an update type and a
select type. We show that the system of Split types
is strictly more powerful than the system of
recursive types and that type inference remains
decidable and feasible. We include a number of
interesting examples not typable with recursive
types that are typable with Split types. In
particular, we demonstrate that the subtyping
relation needed to encode the lambda-calculus into
the Abadi and Cardelli's varsigma-calculus
holds. We also present a polynomial-time algorithm
that infers Split types and show that it is sound
and complete with respect to the type system. We
conclude our presentation by relating the typing
power of Split types to the typing power of other
systems, such as, the system of recursive types with
variance annotations and the system of Self types. [ bib |
.pdf ]
Back This file has been generated by
bibtex2html 1.61
Copyright notice: The documents contained
in these pages are included by the contributing authors as a means to
ensure timely dissemination of scholarly and technical work on a
non-commercial basis. Copyright and all rights therein are maintained
by the authors or by other copyright holders, notwithstanding that
they have offered their works here electronically. It is understood that all persons copying this information will
adhere to the terms and constraints invoked by each author's
copyright. These works
may not be reposted without the explicit permission of the copyright
holder.
If you experience problems downloading any of the files above,
it is most likely because your browser does not handle compressed
files correctly.
In particular, Netscape might save the file in the compressed
gz-format with extension .ps or
.pdf (indicating postscript or PDF, resp.). You can work around this by saving the file,
renaming it to .ps.gz or .pdf.gz, and then
uncrompress it.
|