J
John G Harris
You seem to have missed the point that it is not a matter of knowledge
but communication. The specs are written for *implementors*, not
programmers. That's why JS programmers don't refer to the language as
"ECMAScript" and rarely talk of syntax in terms of "productions".
So you feel that it's wrong to say anything in this news group that
would not be understood by the people who write JQuery ?
An amazing number of programmers don't know what a statement is,
including some with PhDs. That's no reason for not using the word as
defined in the language specification.
There is no need for a term for such a general case (except perhaps
for implementors). Trying to use such a term in programming
discussions will only serve to confuse.
C++ manages to find a use for such a general case, but then it's a
language for real programmers.
Your definition can be thoroughly confusing at times :
1. Back in the days of ECMA 262 v2 you could have a program where
undefined was a variable in one browser and not a variable in another
(because it was pre-defined). This is confusing.
2. Even now in v3 you can write to undefined, so it now suddenly becomes
a variable (because it has now been implicitly declared). This is
confusing.
3. When someone uses My Library they access a thing called API. It's not
a variable according to you (because they didn't declare it). This is
also confusing.
John