[...]
As I was saying, the paragraph:
| Also, we know that the variable object is created and filled with
| initializing values every time on entering the context, and that its
| updating occurs at interpretation of a code
is a bit odd, grammatically. What are "initializing values"? I believe
you mean the for a function declaration, it would be that function and
for a variable, it would be `undefined`.
Thanks. Yep, exactly, but I don't wanna in this case to specify which
exactly values they got. The only info is essential in that sentence
is that at the moment of a code execution phase some data is already
available in the variable/activation object. Which means, variable
object (and is more exact -- properties of the variable object) got
some "initial values" without specifying which exactly values. Because
again, in detail this has been discussed in the second chapter devoted
variable object, so at the moment of reading the fourth chapter, a
reader should already know what is it, which values it have, how it
works and so on.
By the way, I used own concept of "runtime interpretation (of a code)"
phase in translation. Although, in spec there is a "code execution"
phase. I'd like to change it to "code execution", what do you think?
In that case, I would reword it to use standard terminology.
Upon entering an execution context, the variable object is created. For
each parameter variable, a property is created and given the initial
value `undefined`. For each FunctionDeclaration, a property with the
function's Identifier is created and given the value of the function.
For each variable declaration, a property is created and given the value
`undefined`.
Too complex. The main idea of the articles -- is the explanation with
not so dry approach as used in the specification, but clearly and in
the same time still with the scientific approach (which means without
simplifications in terminology, funny pictures and so on which are
used in many articles and even books on JavaScript). But I don't want
just copy the spec's sentences with "robotic" phrases (which of course
are useful exactly for technical specification). And again, all that
stuff about variable object is discussed in the second chapter, and
the fourth chapter is already about the scope chain and its features.
I would also mention the specification section number as a supporting
reference to the statements. In this case s 10.1.3 (Variable Instantiation).
Further chapters of this series depend on previous chapters (I wrote
this in Russian disclaimer and also in introductions of some
chapters). So at chapter 4 a reader already should know what is
"Variable Instantiation" and what are variable and activation objects.
A reader can find this information in the "Chapter 2. Variable
Object." where of course already there is a reference to 10.1.3.
Dmitry.