[REBOL] Re: New competition: do you accept the challenge?! :-)
From: moliad:gma:il at: 7-Nov-2007 18:24
the other point to add when comparing REBOL is that REBOL's main feature is
its syntax (or lack of, in fact).
it takes about an 15 minutes to learn how to express ANY kind of thing in
REBOL. from pointers, to values, to complex types like tuples and dates.
Even objects notation, because of the colon use is so human readable natural
it makes you wonder why others never used that exact notation. When I make
apps and send prefs files... people are able to edit them with absolutely no
training. when I explain how that is the native code format they are
sometimes pretty surprised. I mean, even my mom could change the color
value of some object member without even knowing is program source code.
This is along of what Gregg is talking about. many things do not need to
be done in REBOL in the first place.
The use of dialects is such a powerfull high level construct, it allows us
to run circles around many designs (even in speed) cause we don't have to
build an import-export model, and make a file format structure and what have
not.
instead of filling up structures which define 1500 things, have 150
functions using templates, and type checking ... we can define a language
which expresses the problem directly and use a minimal amount of RAM,
context and processor, to address it. one single word can represent 100
different things based on the dialect's state at that point. so we don't
have to invent 100 different structures for all of those possibilities. and
then, just at end of all the dialect's decision making, you call ONE
function, which applies WHAT and HOW those 5-10 little words express.
if you put in that parse is SCREAMING fast and I dare compare it to many C
compiled apps. those 10 little words become almost insignificant in terms
of time spent.
The issue is that parse is not easily compared for such low level tests as
you present cause it a very high-level control system (you should add it to
your loop functions list, btw ;-) which prevents a lot of processing from
occuring. so unless you present a set of higher-level specs with rules and
expected output, its hard to propose solutions using it.
-MAx