--20cf3026710001089a04a61af3f1
Content-Type: text/plain; charset=ISO-8859-1

On Sun, Jun 19, 2011 at 4:35 PM, Ilias Lazaridis <ilias / lazaridis.com>wrote:

>
> (Please, if possible, avoid comparisons to the other variable types.)
>

First, you specifically started this thread discussing the "inconsistency"
in the way different variables types are handled. Now you sit here and
complain when people are comparing the variable types. Which would you like?
Inconsistencies most times come from trade offs between the different types
- a discussion of those differences can be important to figuring out why
they are "inconsistent"


>
> I cannot see a use case, where placing $x_void into the
> global_variables is *necessary*.
>
> I possibly oversee something very fundamental, but the main rules for
> my expectations are:
>
> * variables come to existence when a value is assigned
> * if the value cannot be determined, "nil" is assigned
>
>
You technically might have a point here - but as with most things in life
there is always a trade off. Obviously needing to do a lookup to find a var
is always the slowest option so there appears to be a speed enhancement here
in that the variable is put into the global vars table immediately so we
don't need to do a lookup each time we hit it. This can be accomplished
because the $ notation makes it automatic what we are looking at. An
argument could be made that the global vars table might be enhanced to
denote something along the lines of "not initialized" for variables in it
that have not have a value assigned yet.

As always however, a patch that implements something is the easiest way to
get there.

John

--20cf3026710001089a04a61af3f1--