World: r3wp
[Parse] Discussion of PARSE dialect
older newer | first last |
Graham 7-Mar-2007 [1643] | What do you mean? Is it encapped? |
Steeve 7-Mar-2007 [1644x2] | sorry ? what do you mean by encapied ? IIRC it was running using parse dialect |
*encapped | |
Anton 7-Mar-2007 [1646x3] | You saw it before, now you can't find it, and wish for someone else to help. |
What did it do ? | |
Encapping is using the rebol SDK to "compile" rebol sources into an executable (from which it is obviously difficult to extract the sources). | |
Steeve 7-Mar-2007 [1649x3] | the goal was to resolve rules (like described with prolog) |
it's the use of an inference motor, usally | |
*usually | |
Anton 7-Mar-2007 [1652] | This one? http://www.rebol.org/cgi-bin/cgiwrap/rebol/view-script.r?script=prolog.r |
Steeve 7-Mar-2007 [1653x2] | not this one |
but the same goal | |
Anton 7-Mar-2007 [1655] | do you remember the author ? |
Steeve 7-Mar-2007 [1656x4] | no sorry |
i'ts verry old | |
rebol.org was not created yet | |
i mean | |
Anton 7-Mar-2007 [1660] | But you were not around at this time, were you ? |
Steeve 7-Mar-2007 [1661x3] | i was |
i'm using Rebol since 6 years at least | |
i made pauses | |
Anton 7-Mar-2007 [1664] | aha ok |
Steeve 7-Mar-2007 [1665x2] | I made a pause during which I raised sheep in the French Alps |
and other ecological activities | |
Maxim 7-Mar-2007 [1667] | and reality kicked in? |
Steeve 7-Mar-2007 [1668x2] | the reality ?, i'm just a nerd, i must admit this weakness, i can't leave without technology |
*can't live | |
Maxim 7-Mar-2007 [1670] | hehe not enough buttons on a sheep I guess ;-) |
Steeve 7-Mar-2007 [1671] | I tested sincerely, but to live without technology it is like living with the Middle Ages, one passes the three quarters of his time to produce his food and to make provisions for the winter . |
Graham 8-Mar-2007 [1672] | that's why the stoneage was not known for it's artistic achievements |
Sunanda 8-Mar-2007 [1673] | I've never heard of such a script, Steeve. It does not seem to be on REBOLtech (a forerunner to REBOL.org). You could try some more detailed searches than I did if you want to look further http://www.reboltech.com/library/scripts/ **** Sadly, a lot of good stuff gets published on personal websites, and when the enthusiasm for REBOL wanes, or the site is taken offline for some reason, the scripts are lost to the wider community. |
sqlab 8-Mar-2007 [1674] | Steeve, you can have a look at the scripts archive http://www.rebol.org/cgi-bin/cgiwrap/rebol/ml-display-thread.r?m=rmlYCHQ |
Henrik 9-Apr-2007 [1675] | I forget whether it's possible to move backwards in the block I'm parsing? |
Oldes 9-Apr-2007 [1676] | yes, it is |
Henrik 9-Apr-2007 [1677] | ... how? :-) |
Oldes 9-Apr-2007 [1678] | >> firsttime?: true parse [1 2 3 4 5][any [set v integer! p: (prin v if all [firsttime? v = 4][p: skip p -2 firsttime?: false]) :p]] 1234345== true |
Henrik 9-Apr-2007 [1679] | I'm not sure I get it. how does parse know how to deal with 'p? |
Oldes 9-Apr-2007 [1680x2] | p: gets current parse position :p sets new position |
but it must be in documentation somewhere | |
Henrik 9-Apr-2007 [1682] | it does, but I still don't see it. does parse read the block at the end of the 'any block? |
Oldes 9-Apr-2007 [1683x3] | You can use it not just inside any block |
but don't know any example why to use it without some rule like 'any | |
>> parse [1 2 3 4 5] [any [p: (probe p) skip]] [1 2 3 4 5] [2 3 4 5] [3 4 5] [4 5] [5] [] | |
Henrik 9-Apr-2007 [1686] | gave up. two-pass is easier :-) |
Anton 10-Apr-2007 [1687x2] | Here is Oldes example padded with comments: |
firsttime?: true parse [1 2 3 4 5][ any [ set v integer! p: ; <-- set P to the current parse position. ; (This is the input series with the series index at the current position.) ( ; Here inside the paren is normal rebol code prin v if all [firsttime? v = 4][ p: skip p -2 ; <-- move the index of the series referred to by P firsttime?: false ] ) :p ; <-- set the current parse position to P ] ] | |
Maxim 13-Apr-2007 [1689x4] | I am having a hard time with using REMOVE on a parsed string. |
symbol: charset [#"a" - #"z" #"A" - #"Z" #"0" #"9" "_-?!*+~"] nstr: "...aa.....a.....a.....h." parse/all nstr [ some [ symbol | end skip | [ here: ( probe here either none? here/1 [print nstr print "!!" ][print here/1 print nstr remove here here: back here]) ; :here skip ] ;:here ] ] probe nstr | |
this just does an infinite loop... this is one of MANY twists I've put on the rules... (notice commented out :here) | |
and nothing works... if I set here to be the previous letter and then use skip in the rules... the first dot from nstr will not get removed... since we cannot go past the begining. | |
older newer | first last |