> On Jun 9, 2020, at 6:00 PM, Brian Goetz <[email protected]> wrote: > >> - The syntax ".val" used to denote an "inline type" is a bit of a mismatch. >> Maybe we want a new syntax. Or maybe we want to rework the word "value" into >> the story so that "inline type" becomes "value type". >> >> This was my reaction too. ".val" means "the value itself, that you care >> about", and ".ref" means "a reference value that points to the value you >> care about", but I used the word "value" more times in the second phrase. It >> doesn't feel like this will be clear. > > My intention here was to appeal to terms many users already understand: pass > by value and pass by reference. That's why `V.val` is not `V.inline`.
Sure. And maybe that value/reference dichotomy can be extended into the terms we use in the model. So, the "values" of the language (using the term formally) are *values* (objects) and *references to values*. Now there's a nice alignment between the syntax and the terminology. Or given that "objects" parenthetical, maybe "object" is the right term: the values of the language are *objects* and *references to objects*. In that case, maybe the syntax should be 'Foo.obj'. The objects themselves, not references.
