[REBOL] Re: Parsing comment
From: rotenca:telvia:it at: 26-Sep-2002 14:37
> RPT> This is true only if the standard function Load has been called on the
> RPT> original string, but Rebol does not require it:
> Of course. :-) But then, any language can be anything, as long as
> you read the text with your own parser. ;-)
Again, i'm not so sure. :-)
The difference between Rebol and ARexx, for example, is that in the latter
your parser must output a string which follow the ARexx syntax rules.
In Rebol my parser can directly create Rebol datatypes with the 'to function,
by-passing any Load syntax rule.
From this point of view, Load syntax is only the syntax of a dialect (the
The "true" Rebol language is made of blocks and datatypes not of chars in
string, so I can bypass almost all syntax rules about sequences of chars. The
only syntax limits are that of the 'to function, which are very relaxed and
are about datatypes and not about syntactic sequences of types.
Every code in a string is only a dialect which must be translated (compiled)
in the true interpreted Rebol language by a function like Load. Final user
always works on string dialects, the interpreter only understand the language
made of blocks and datatypes.
What we believe to be the Rebol language is only one of many possible
serializations. String sequence is a layer over the true rebol code, it can be
changed without changing the rebol internal syntax (block and datatypes). The
existence of the 'to function and of datatypes like set-word or func makes all
the Load work only a conventional work (it only calls 'parse and 'to to
emulate the human language).
word: is not a set-word