[Prev][Next][Index][Thread]
Re: Did anyone ever write out a/the type system for C++ ?
This may not be the exact reference you're looking for but Jon Rossie's
work on "sub-objects" may answer your question.
http://www.csc.ncsu.edu/eos/users/j/jrossie/www/papers.html
Sundar
"John C Mitchell" <mitchell@cs.stanford.edu> on 11/18/99 01:56:51 PM
Please respond to mitchell@cs.stanford.edu
To: "Types List" <types@cis.upenn.edu>
cc: (bcc: Shan Balasubramaniam/Lycos)
Subject: Did anyone ever write out a/the type system for C++
?
[----- The Types Forum, http://www.cis.upenn.edu/~bcpierce/types -----]
Although I am sure there are a lot of groans along the way,
it would be a useful service if someone would write out
the type system for C++ as a set of typing rules, subtype
rules, and whatever other hocus pocus is needed to say
what's really going on. Has anyone done this for an
interesting subset of C++?
At the moment, I am particularly interested in how
class B : public A { ... }
does (and does not) cause B to be treated as a subtype of A.
In particular, it appears that B <: A follows for r-values
but not for l-values. This makes sense of course, but the
details of how this is applied in type checking look fairly
tricky. In addition B* <: A*, but not B** <: A**, and other
fun stuff.
John Mitchell