• Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search
 

World: r4wp

[!REBOL3] General discussion about REBOL 3

Cyphre
22-Feb-2013
[1051]
(note: the paths to bin/ folders must be in the specific order mentioned 
above)
Rebolek
22-Feb-2013
[1052]
Thaks, I will try it
Cyphre
22-Feb-2013
[1053x3]
If you wantt I can put the "minimal" MSYS bin folder into a zip archive 
so you can download it and just copy it into your codeblocks instalation...
I did the same for Ladislav and it worked for him well AFAIK.
also, other option is to create CodeBlocks setup file so you can 
build directly from CodeBlocks using mingw but I guess noone did 
that so far ;)
Rebolek
22-Feb-2013
[1056]
Cyphre, that would be very nice.
Cyphre
22-Feb-2013
[1057x2]
here you go: http://cyphre.mysteria.cz/stuff/msys.zip
just unpack it and copy to <your path to codeblocks>/CodeBlocks/ 
main dir
Rebolek
22-Feb-2013
[1059]
Thanks, I will try it
AdrianS
22-Feb-2013
[1060x2]
Actually, to keep things as simple as possible for people, all you 
need is Code::Blocks, the CB project file and a slightly modified 
make-make.r that is soon to be checked in by Andreas (or which I 
could provide). Then, you can build from CB (and debug), navigate 
your C source propertly, etc.
Ping me either here or on SO chat if you would like the two files.
GrahamC
23-Feb-2013
[1062x3]
This is a tip for where you have those pesky @s in a username. You 
still can't get past that by using %40 in a url as Rebol converts 
those when it evaluates the url but you can do this


>> cmd: open decode-url "ftp://user%40rebol.com:[password-:-ftp-:-rebol-:-com]"
make object! [
    title: "FTP Protocol"
    scheme: 'ftp

    ref: [scheme: 'ftp pass: "password" user: "user%40rebol.com" host: 
    "ftp.rebol.com"]
    path: none
    host: "ftp.rebol.com"
    port-id: 21
    pass: "password"
    user: "user%40rebol.com"
]
port opened ...
saves a bit of typing out the whole spec
now we just have to add a dehex inside the open port actor
Gregg
24-Feb-2013
[1065]
Does the old charset patch no longer work?


net-utils/url-parser/user-char: union net-utils/url-parser/user-char 
make bitset! #"@"
GrahamC
24-Feb-2013
[1066]
didn't try ... !
Rebolek
25-Feb-2013
[1067]
R3 CALL seems pretty useless to me compared to R2. Is there anybody 
trying to improve it?
Andreas
25-Feb-2013
[1068x2]
I'm working on it, but only for Posix (Linux/OSX) so far.
And starting first with the basics I need (/wait + /input /output 
/error). (So no full scheme & async at the start.)
Rebolek
25-Feb-2013
[1070]
Great news, Andreas! Linux is good for me and basic input/output 
is enough too. Just what I need.
Andreas
25-Feb-2013
[1071]
I discovered some interesting PARSE functionality, which I have not 
known about before. TO and THRU with integer arguments seem to do 
absolute positioning:

>> parse "abcd" ["abc" to 2 "bcd"]
== true


Anyone seen this before? I added a CC ticket as a reminder to document 
it (http://issue.cc/r3/1964) -- if anyone knows about a place where 
this is documented already, I'd be happy about a pointer.
BrianH
25-Feb-2013
[1072]
Integers are rule modifiers, so to 2 doesn't actually do anything. 
In order for that to work you would have to use to quote 2.
Andreas
25-Feb-2013
[1073x2]
Please just check for yourself, it behaves as I describe it above 
:)
(And it does so in R2 as well, so I may have picked the wrong group.)
Ladislav
25-Feb-2013
[1075]
I suggest to put the documentation to


http://en.wikibooks.org/wiki/REBOL_Programming/Language_Features/Parse/Parse_expressions



taking into account that this article strives to be as complete as 
possible
BrianH
25-Feb-2013
[1076]
The main problem is that when you pass TO an invalud rule, PARSE 
doesn't complain, it just ignores the rule as if you didn't write 
it at all.
Andreas
25-Feb-2013
[1077]
Ladislav: thanks, forgot to list that. And it's at least a place 
where we can add it right away.
BrianH
25-Feb-2013
[1078]
I think we have a ticket about that TO error ignoring problem.
Andreas
25-Feb-2013
[1079]
Brian, it's not an error. TO/THRU support integers.
Rebolek
25-Feb-2013
[1080]
Andreas, you're right! That's a great feature!
BrianH
25-Feb-2013
[1081x2]
to [2] should work, to 2 shouldn't.
But when to 2 doesn't work, TO doesn't complain.
Rebolek
25-Feb-2013
[1083]
Why it shouldn't work? It's great.
Andreas
25-Feb-2013
[1084]
https://github.com/rebol/r3/blob/master/src/core/u-parse.c#L487
Rebolek
25-Feb-2013
[1085]
>> parse "abcdefgh" ["abc" to 2 p: (probe p)]
bcdefgh
== false

>> parse "abcdefgh" ["abc" to 7 p: (probe p)]
gh
== false
Maxim
25-Feb-2013
[1086]
Rebolek, unfortunatly, you are mis-using TO.   TO is a search.   
 what you are doing is supposed to be done with SKIP
BrianH
25-Feb-2013
[1087]
Is there a skip operation in PARSE?
Andreas
25-Feb-2013
[1088]
Maxim: SKIP does relative positioning, TO/THRU do absolute positioning.
BrianH
25-Feb-2013
[1089x2]
Well, that behavior seems like an undocumented feature. And a useful 
one :)
Wait, that's right, 2 skip, not skip 2.
Maxim
25-Feb-2013
[1091]
what? heh? yuk.  sorry, but how do I then search for integers?
BrianH
25-Feb-2013
[1092]
to [2]
Maxim
25-Feb-2013
[1093x2]
I find that becomes quite assymetric in use.  if TO is going to change 
behaviors... relative in some cases and absolute in others... using 
weird datatype conventions (which seem to be completely different 
from the rest) then I'd rather have a new Absolute keyword which 
works just like to on All datatypes.
just like TO 2 ,  but on All datatypes.
Andreas
25-Feb-2013
[1095]
Only what would `absolute #"a"` mean?
Gregg
25-Feb-2013
[1096]
Move to Parse if this applies to R2 as well.
Andreas
25-Feb-2013
[1097]
Applies to R2 as well, so let's move to "Parse".
AdrianS
25-Feb-2013
[1098]
Andreas, did you discover this by just playing with parse or did 
you read through the source? I wondering if there are other goodies 
in there.
Andreas
25-Feb-2013
[1099x2]
Reading the source.
But this was pretty much the first thing I started looking at, which 
already lead me down the rabbit hole of testing it in R2 and R3, 
looking for documentation, filing a documentation request against 
R3 and discovering and reporting a bug against R3 (and I'll probably 
continue down the hole and fix that bug). So I didn't get much further 
towards other goodies, yet :)