r3wp [groups: 83 posts: 189283]
  • Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search
 

World: r3wp

[Parse] Discussion of PARSE dialect

BrianH
8-Nov-2008
[2940x2]
Oh, that was your suggestion? I thought it was Henrik. It's on the 
list, and thanks for the link :)
Right now the Parse Proposals doc is for dialect enhancements. I 
am keeping a list of improvements out of that scope that will get 
worked on as well. Don't worry...
Sunanda
8-Nov-2008
[2942]
Thanks -- I'm sure I'm not the first to have had the idea.
BrianH
8-Nov-2008
[2943x4]
You aren't, but it's still a good idea :)
I'm glad that we are finally planning on PARSE improvements. PARSE 
has been the primary REBOL feature I've used for 8 years now.
That was a lot of writing - I must have gotten angry after all.
I forget sometimes that the REBOL community has been around long 
enough that many of the people from the early days aren't here anymore. 
I guess a lot of people don't remember me from the latter part of 
the REBOL 1 days and think I am a newbie. Sorry :(
Graham
8-Nov-2008
[2947]
Yep, I'm using code that you've written Brian :)  Probably from years 
ago !
BrianH
8-Nov-2008
[2948x4]
I am sorry if it seemed like I was taking credit for various PARSE 
proposals. It is not anyone's fault that I have been using PARSE 
long enough that 7 or more years ago I came up with almost every 
one of those proposals, or their original inspirations. That's where 
the conversations that led to the REPs came from. There weren't as 
many REBOL users back before the Official Guide and REBOL for Dummies 
:)


If other people who have had the same ideas since would like to add 
their names to the appropriate proposals I would be more than happy 
to help - consider them to be votes. I would be happier still if 
someone came up with a better way to do THROW or DO, because I am 
at a loss to figure out a way that isn't dumb :(
I am embarrassed that the best, most obvious proposal is one that 
I completely spaced on. Congrats on REVERSE, Carl :)
It never occured to me or anyone else who was talking about enhancing 
PARSE in days of yore, not even Ladislav :(
Thanks, Graham :)
Graham
8-Nov-2008
[2952]
Pekr, Gabriele, Tomc, yourself and I are probably the longest Rebolers 
here these days
BrianH
8-Nov-2008
[2953]
btw Sunanda, I can't remember who was the first to think of having 
trace support for PARSE, but it wasn't me :)
Graham
8-Nov-2008
[2954]
Is attribution really important?
BrianH
8-Nov-2008
[2955]
Steeve has indicated that it is.
Graham
8-Nov-2008
[2956]
Is the driving force for fixing parse so that it can better parse 
data, or, to build better dialects, or both?
BrianH
8-Nov-2008
[2957x3]
Strangely enough I wasn't talking about code I had posted that you 
might have used. In the early days before REBOL.org, I tended to 
post code to the mailing list. The code that you would have used 
would have been in REBOL itself - I used to give very detailed messages 
to feedback about mezzanine bugs, usually with rewrites. Many of 
those rewrites made it into REBOL, especially in the 2.5 version. 
Some natives too (to-local-file and to-rebol-file were based on REBOL 
code I wrote and posted).
Right now the driving force is building better dialects - Carl needs 
it for the new GUI dialects. The data parsing improvements have just 
accumulated over the years and now seems like as good a time as any, 
especially because of the R3 compatibility break.
Some are needed because of Unicode. You can't effectively complement 
a charset anymore so NOT is needed.
Graham
8-Nov-2008
[2960x2]
ahh... so we can blame you for to-rebol-file problems??  :)
http://members.core.com/~bhawley/rebol/to-rebol-file.r
BrianH
8-Nov-2008
[2962x2]
I can't shut down that website - my account was canceled more than 
6 years ago and I can't access it. If you look elsewhere on the site 
you will find the only site on the internet with the Oberon Compiler 
for DOS - the developer disappeared without a trace.
I've wanted to change the licensing on that script to BSD for years. 
It can do more than the native version - they simplified it.
Graham
8-Nov-2008
[2964]
Your CV is a bit out of date!
BrianH
8-Nov-2008
[2965x3]
Can't edit the site :(
Wow, that code is so primitive.
Except require.r - that is advanced even today.
Anton
8-Nov-2008
[2968]
I should just say that I really appreciate the enormous amount of 
energy that BrianH has put into this project (and generally). I can 
see there's a lot of work to manage all the proposals.
Steeve
8-Nov-2008
[2969]
2, 3 tips 
I know that Brian is great contributor but I think sometimes 
it tends to reject a bit too easily ideas of others. 
Why I am saying this, is that I am not always convinced by his 
arguments but he acts as if the issue was resolved in advance. 
(I may have a problem with that) 

About who is credited with what, I think that this is not 

important too, however it was a bit of supris seeing the name of 
Brian on 
most of the ideas, then as I said previously, this makes 

many years that these Improvements have been suggested by different 
people. 

Obviously this is not an important step, but Brian, you puting your 
name 

everywhere pretexting you collect ideas is a little ... how to say 
that ?
pretentious. 

Personally, I am a large user of parsing. 
I think this is the most important function in Rebol. 
You can do practically everything with it.
Design dialects, interfaces, and many others things. 

Parse can build programs by clearly showing the data structures your 
are dealing with. 
Thus our scripts win in readability. 


During all these years, I was very frustrated seeing some limitations. 

I thought, oh my God, if only we could do this simply, REBOL would 
be so powerful. 

My view is that parse should be extended (as far as possible) to 
gain in expressiveness.

One thing I don't like with parse, is the cumbersome process to pass 
parameters to functions. 

I give an example. 
usually we do: [copy parm my-rule (my-func parm)] 

If parse knew recognize when to call a function we could write: 
	[Myfunc my-rule] 

This would be much more compact and expressive. 

More, we could use return value of myfunc to guess if the parsing 
should continue or not. 

This development would discard most of proposals that were made because 
we could add many new commands very easily. 
(IF NOT ALL RETURN etc ...)
Graham
8-Nov-2008
[2970x3]
Steeve, that looks like a major change ... whereas I think Carl is 
just asking for enhancements.  Maybe Rebol4 ??
ps: I don't mind being confused with BrianH :)
maybe that way I'll gain access to some of the private channels ! 
lol
Steeve
8-Nov-2008
[2973]
u could, you are a celebrity (for me, after what i said to Brian, 
there's no chance) ;-)
Graham
8-Nov-2008
[2974x2]
All this parse stuff is over my head .. I try to avoid headaches. 
 Let the experts work it out I say.
I just want to be able to better parse XML namespaces and all.
Steeve
8-Nov-2008
[2976x2]
i agree, better is my second name, lol
and my english is to poor to dealing with experts
Graham
8-Nov-2008
[2978x2]
you could write in french ...
Off topic ... but one of my first chat programs used SOAP to do automatic 
translations
Steeve
8-Nov-2008
[2980x2]
i think i do a little better than automatic translators.
no ? ;-)
Graham
8-Nov-2008
[2982]
But it means that native french speakers could read it as you intended 
...
Steeve
8-Nov-2008
[2983x4]
but the
French Reboler are not very interesting with my strayings
The French forum lost many contributors during last years
currently most of them are beginners
Graham
8-Nov-2008
[2987]
that's a world wide phenomenon
Steeve
8-Nov-2008
[2988]
DockKimbel never participate, Didec is scarce, there is only Shadwolf.
BrianH
8-Nov-2008
[2989]
Steeve, your latest suggestion is very similar to the RULE! type 
REP (11). Unfortunately, Graham is right that this would basically 
require rewriting PARSE from scratch as a function type. This is 
something I have wanted to do for years, and will get the chance 
to do so once R3's user-defined datatypes are available. I like the 
way you think :)