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

World: r3wp

[!REBOL3-OLD1]

shadwolf
29-Sep-2009
[18450]
and i think parse is already a big enhancement compared to regular 
expression ( i give a try to it past week writing a software in ruby 
... that's horrible ... I mean i'm complaining about parse but regular 
expression is so much a bore and stupid to write + they don't allow 
any action they are just made for match  only way to have regular 
expresion doing something is in ruby using them with an action mathod 
of the string class..... And that the kind of stupid things most 
of  coders in the world today found fantastic ??? HOOOO  really ???)


So when we come from mystring.match( "/\d\w***.*" ) kind of things 
of course going to the match action parse way is complicated... but 
complicated maybe not the way it's supposed to be.

Parse works better on "tags" words matching more than cabalistic 
formulas like regular exapressions. This doeasnt means it can't be 
doing that too..
shadwolf
30-Sep-2009
[18451]
what i have real difficulties to figure out in parse is the index 
system... I have a problem to see where i'm  and what my actions 
is doing.  do i "store index match then action" or do i  "match store 
then action" ? And if you add to that the sub rules i'm like completly 
lost. Cause in some cases sub rules can trigger their own particular 
special only for them actions ...
Chris
30-Sep-2009
[18452]
Sorry to ask what I may be able to find elsewhere, but what is the 
current policy on multiplatform alpha releases?  I've just tried 
a82 on OS X (my second foray into R3) but understand the new parse 
features are a83+.
shadwolf
30-Sep-2009
[18453]
sems like things are done for windows first then adapted to other 
OSes... That's how i understand the realease method basing me on 
what i saw alreeady you have some realease that adds new things then 
releases that only add those new things to other than windows OSes...
Chris
30-Sep-2009
[18454]
But how far behind might it be?
PeterWood
30-Sep-2009
[18455x2]
In the past Carl seemed to skip building the "big" alpha releases 
for OSX and Linux until the Windows has been tested. I would guess 
that we'll see a84 or a 85 for OSX.
The OSX version of Rebol3 is missing things that are in the Windows 
version (extensions) and has a number of bugs such as no internal 
event handling so that wait consumes 100% of the CPU, server ports 
don't work (probably related to no internal event handling) and call 
doesn't work properly.
Chris
30-Sep-2009
[18457]
'k, will be patient.  I've a small project set aside...
PeterWood
30-Sep-2009
[18458]
R3 will run as a CGI under OSX though, it doesn't yet do so on Windows.
shadwolf
30-Sep-2009
[18459x2]
about chat ... i always said it was hard to have a precise location 
of interresting exchanges ... but that's the same in altme...  in 
fact any discussion here or in chat when it pops out interresting 
ideas should then be resume into a temporary task list  but ... that's 
normal most of the time discussion here are mixed we don't only propose 
enhancements we try to figure out how things works then  we try to 
give how things could or should be working in order to make our lifes 
easier... It's a difficult task to keep tracks on every good idea 
passed throught altme or Chat  system...
i don't understand the "it will work as cgi ..." does it means outside 
an apache server and through a html page rebol won't work ? then 
rebol would be something like a custom php ?
PeterWood
30-Sep-2009
[18461]
REBOL3 cgi scripts don't work on Windows (under Apache or IIS) but 
do run on OSX (under Apache).
Graham
30-Sep-2009
[18462]
Are there any rebol based R3 web servers yet?
BrianH
30-Sep-2009
[18463x2]
There's barely a client. Web server support was originally intended 
to be built in, but we'll see whether the work gets done. Openning 
the source doesn't magically provide more people to do the work. 
We need help.
Shadwolf, most of the code in R3 is open already.
Sunanda
30-Sep-2009
[18465]
Why does this take over a minute to complete?
    dt [
        parse [1] [some []]
        ]

(There is a similar time issue with R2)
Henrik
30-Sep-2009
[18466x2]
I thought that was fixed...
it's the same with an empty ANY rule.
BrianH
30-Sep-2009
[18468]
A SOME or ANY rule that does not advance is an endless loop. [some 
[]] is equivalent to [some [none]].
Henrik
30-Sep-2009
[18469x2]
can this not be fixed? I can't see why one would want such a rule.
and I imagine a lot of beginners getting stuck in this.
Sunanda
30-Sep-2009
[18471]
Endless I can understand....but 90 seconds run time is something 
else :)
Perhaps Secure will handle it one day.
Steeve
30-Sep-2009
[18472]
well, we can't either protect again someone coding 
>> forever []
BrianH
30-Sep-2009
[18473]
This is on purpose (the "fix" was reverted). Sometimes, particularly 
when your loop contains modifiers or productions you don't want it 
to advance.
Steeve
30-Sep-2009
[18474]
they do the mistake, one time, two times, but no 3 times.
BrianH
30-Sep-2009
[18475]
It's a documentation problem, not a dialect problem. Parsing is only 
a beginner task to a limited extent.
Henrik
30-Sep-2009
[18476x2]
I disagree on unfixing this. It's hostile towards the beginner to 
allow hanging the parser and I ran into this quite a few times, before 
finding out what went wrong.
and I still occasionally accidentally activate it when building parsers 
in the console.
BrianH
30-Sep-2009
[18478x2]
Parsing is not a beginner task. There are many ways you can shoot 
yourself in the foot with PARSE, and we just added more. Live with 
the fact that some concepts require some explanation :)
This is why we have the ?? operation and TRACE function.
Henrik
30-Sep-2009
[18480]
can you show me an example where SOME [] is useful?
BrianH
30-Sep-2009
[18481]
some [remove "a"]
Steeve
30-Sep-2009
[18482]
not some [], but empty rules
Maxim
30-Sep-2009
[18483]
oh, I find the new stuff makes much of the engine much less exponentially 
guru level.  its like... in R2, parsing a number in a string is easy... 
extracting a chain of them requires some thought, beyond that... 
people bleed from their eyes   ;-)
BrianH
30-Sep-2009
[18484]
Rules that don't advance.
Henrik
30-Sep-2009
[18485]
if a rule constitutes the part in the block and the block is empty, 
I don't see how that is useful.
Sunanda
30-Sep-2009
[18486]
I think the 'some loop highlights the important need to extend 'secure 
to cover parse.

That's an effective way to rein in loops on dynamic / user contributed 
parses -- such as Henrik's / Kaj's "Try REBOL 3" web sites.
Maxim
30-Sep-2009
[18487]
as steeve says... forever [] isn't usefull either.  at some point 
you have to understand a bit of what you are doing.


the only thing that really happens to me is hitting the end, and 
not realizing that something in my some or any is preventing the 
rule to go "past" the end.
Steeve
30-Sep-2009
[18488]
if the empty block is constructed later, it can be useful to not 
prevent their existing
Henrik
30-Sep-2009
[18489x2]
Sunanda, yes, that's one reason I halted the project.
Steeve, would it be empty right at parse time?
BrianH
30-Sep-2009
[18491]
Henrik, the problem is not that the rule is empty, it is that the 
rule doesn't advance the position. Complex rules can not advance 
too.
Steeve
30-Sep-2009
[18492]
yes, but not with some [ ] or any [ ]
Henrik
30-Sep-2009
[18493x2]
BrianH, but empty rules do per definition not advance. Why not per 
definition then cause an error?
I can see that all situations can't possibly be avoided, but these 
stupid little ones, I'm sure they can.
BrianH
30-Sep-2009
[18495]
It's irrelevant. Empty rules are easy to debug, so that won't be 
a problem for beginners. It's when complex rules don't advance that 
is the problem.
Henrik
30-Sep-2009
[18496]
I disagree that it's irrelevant. It's hellishly annoying to have 
to wait for the parser to finish on an empty rule, when you are working 
with PARSE in the console.
Ladislav
30-Sep-2009
[18497]
Don't be that short-sighted, Henrik. Since the Parse dialect is intended 
to be Turing complete, there is no way how to "automagically" detect 
all such cases!
BrianH
30-Sep-2009
[18498]
Removing support for PARSE [some []] means removing support for PARSE 
[] - inner blocks work through recursion.
Henrik
30-Sep-2009
[18499]
Ladislav, how hard is it to detect an empty rule and cause an error?