Hi Jason,

this comment is not directed at the rebol parse word, but at the
internal parser which parses a script to execute it.

So what he weans is the following:

  fee fie foe fum

may be a valid line in a Rebol script. But you don't know from first
view what happens here: are these 4 functions, run one after another? Is
it one function with 3 arguments? Is it a function with 2 arguments,
where the second argument is first calculated by another function with
one argument? Or what? Only the parser knows at execution time, or the
one who knows the words by heart.

In Python the line might look like:

  fee( fie foe( fum))

where you can instantly see, that fee is a function of 2 arguments, and
where the second argument is computed by foe, a function with one
argument. 

Now in Rebol, due to it's LISPy nature, you could write it like:

  (fee fie (foe fum))

to give you the same visual feedback, but you aren't forced to use the
parentheses, so most people don't most of the time, except when the
expression becomes too complicated.


I hope that sheds a little light on the subject.

Kind regards,

Ingo


Am Mon, 2002-09-23 um 06.03 schrieb Jason Cunliffe:
> Today I read a comment about REBOL which I don't understand. I am NOT seeking to
> start a language flamewar. Just curious and hoping someone here can explain more
> about parsers. I barely know how to use REBOL's parse, but I like what I know
> about it, and it has a strong reputation in these waters.
> 
> > On Rebol (which to my ears rhymes more with Cobol than with rebel :-),
> > I've not looked much at it personally, but I trust a close colleague
> > who has, and who finds it hard to use because the parser cannot know
> > the end of a function's parameter list -- that's only known at run
> > time, once the function is called.  Sounds like dead on arrival to me,
> > as far as language design goes.  So if we want to learn from Rebol, we
> > must try to learn from other ideas in it, not from the core language
> > design.
> 
> 
> The context behind this is I have been engaged in a some intense debate on the
> Python-oriented Edu-Sig list. I love Python, but tried point out the obstacles I
> think it presents to very novice programmers.
> 
> I mentioned REBOL, giving a contrasting example of how direct and friendly
> REBOL's help command is. Mainly because it includes a search function. Simple
> idea, but incedibly friendly effective result. My scenarios was of novice python
> student trying to determine the current working directory. "Where am I?"
> 
> >> ? d
> >> ? dir
> >> ? what-dir
> 
> Python by contrast is great for hackers, and should be great for students. It
> has all kinds of super-duper tools a for browsing docstrings, and object
> introspection, but it can be initially overwhelming or useless, until you know
> exactly what to type, you can find yourself a few screenfulls later before your
> get the golden answers. In Python to answer the question "where am I?" you have
> import a module, then invoke one of its methods. Very Easy when you know how,
> but obscure as hell when you don't:
> >>> import os
> >>> os.getcwd()
> 'C:\\Python22'
> 
> Thanks
> ./Jason
> 
> -- 
> To unsubscribe from this list, please send an email to
> [EMAIL PROTECTED] with "unsubscribe" in the 
> subject, without the quotes.
> 
> 


-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.

Reply via email to