IdentityObject and InlineObject

Raffaello Giulietti raffaello.giulietti at gmail.com
Sun Apr 19 09:46:40 UTC 2020


Hello,

getting rid of InlineObject means that static or dynamic queries for 
inline types need to rely on complementarity: an object is inline if it 
is not identity (except perhaps for an instance of Object, which is 
neither in the type system as I understand it).

Should a third kind of objects beside identity and inline be invented in 
the future (quantum objects? who knows?), complementarity 
("non-identity") alone would no longer suffice as a test for inline.

As the benefits of giving up InlineObject seem low when compared to the 
costs of re-introducing it in the some future, I like the explicitness 
of the current dichotomy better. It gives the programmers, rather than 
the language designers, the choice of complementarity versus explicitness.

So, either it is provable that the inline-identity dichotomy is here to 
stay forever (a theorem in computer science, so to say), or I would keep 
InlineObject as a reasonably priced investment for the future, even if 
it is felt as extra luggage today.


Greetings
Raffaello



More information about the valhalla-spec-comments mailing list