Rick Waldron wrote:
On Monday, August 6, 2012 at 4:51 PM, Axel Rauschmayer wrote:
On es-discuss, I’ve seen the term “data properties” used for named
data properties that are not methods.
In this light: wouldn’t it be better to rename named data
properties to named value properties?
"value" usually means scalar, whereas "data" is accurately vague.
My understanding:
- Method: a property whose value is a function.
- Data property: a property that is not a method or an accessor
(getter, setter). Example: “ES.next classes don’t let you directly
create data properties in prototypes”.
- Value: the union of primitive values and objects.
What is the endgame? Add more terminology to the spec or try to define
a term to be adopted into the spoken lexicon?
The former doesn't currently have any ambiguity and the latter is
tough because...
1. Most devs don't even use the term "accessor", instead they say
"getter-setters"
2. Most devs will use "value" to describe a scalar and "object" or
"reference" to describe an object... "data" is used to mean
either/both (which is why Brendan's "value objects" makes complete
sense: looks like a value, but is actually an object)
3. "method" is the only commonly used term
Good points.
Axel, I don't think "we" can redefine the jargon commonly used by JS
developers. It's enough to track and influence what's commonly written
and spoken.
In the spec, even ignoring common usage, I would not try to mess with
"data property" right now. As Rick notes, "value" may be taken to mean
"primitive, not reference (object)."
/be
_______________________________________________
es-discuss mailing list
[email protected]
https://mail.mozilla.org/listinfo/es-discuss