In an earlier message, Ernest E Vogelsinger [mailto:ernest@;vogelsinger.at]
> Think of how an interpreter works. It parses the
> sourcecode in realtime, not as a compiler. People must
> _wait_, every time, until it is finished,
> not only once like a compiler. Thus designers of
> interpreted languages like something that can easily be
> distinguished, so you don't need to lookup a
> lot of hash tables to identify a symbol, or to
> resolve amiguities.
Lots of other popular interpreted languages managed to get by without the
need for something unique to identify a variable name: LISP, TCL,
know when it might see a variable (or constant, which can be stored in the
same hash table). Look at the syntax for any language. There's really no
need for extraneous symbol table lookups.
> That's why the '$' preceds a variable name. Simply
> said, when the parser sees a '$', it knows which symbol
> table to look it up. If a token doesn't have a '$', it
> can be found in the table of keywords of the language's
> state machine.
But, that's not true. If the token doesn't have a '$' it could be a
function or constant name, as well as a keyword.
> >O Ernest E. Vogelsinger
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php