[bitc-dev] Semantics of unboxed
Jonathan S. Shapiro
shap at eros-os.org
Thu Oct 21 09:29:40 EDT 2004
On Wed, 2004-10-20 at 22:13, EricNorthup wrote:
> And what you mean by "EQ" ?
Two objects of the same type are equal if all of their fields are equal.
Two objects of the same type are EQ if the share the same storage.
That is, EQ is pointer equality, not content equality.
> I took what Shap wrote to mean "the langauge semantics can describe all
> containment relationships as being 'boxed' -- and thus programmers don't
> specify boxed/unboxed -- but the compiler is free to unbox things when
> it is safe to do so." And not a statement that "everything can be unboxed".
Neither of these is what I meant. The compiler is free to unbox when it
can unless I need control over structure layout. But the question I was
asking was: can the UNBOX nature of a variable be completely ignored for
purposes of semantic specification. Unfortunately, the answer is "no".
I'll send out a note discussing why in a moment.
More information about the bitc-dev