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

World: r4wp

[#Red] Red language group

Kaj
28-May-2013
[8039]
https://github.com/mxcl/homebrew/blob/master/Library/Aliases/gtk
Geomol
29-May-2013
[8040x3]
Ok, thanks both of you.
I begin to get an idea. :)
Some funny slides in there!

How REBOL began 14 years ago...

 - and then an image from the frech revolution with REBOL flags, onto
... and where it is today

 - and the image of a raft at sea with no sight of land, people suffering 
 and great despair.


You need a viking ship in there maybe, sailing off for new adventures 
in a new World.


I feel, Red is a good project, and with BSD license, it should be 
possible to give and take easily, right?
Pekr
29-May-2013
[8043]
yes, you are correct, you can eventually use its code freely. But 
I think it will not be of much usage to you - Red code compiles to 
Red/System, which I regard being something like VM for Red. I also 
think, that you are free to take some code from R3, which is C code, 
and might be more usefull to you, and hopefully Apache2 license fits 
here too ....
Geomol
29-May-2013
[8044]
Red/System is also BSD license, isn't it?
Pekr
29-May-2013
[8045x2]
yes, it is ....
Seems to be BSD-3 ... but you can check it on Github ....
Geomol
29-May-2013
[8047x2]
So I could see World benefit from Red, thinking of JIT-compilation 
or Rebcode kind of feature, and I could see Red benefit from World 
in some of the mezzanines, I've done already, and maybe some of my 
closed source code, that target a certain problem, like the multi-line 
input in the console (blocks and long strings going over more lines). 
And maybe World could even get a garbage collector from Red, as for 
example Gregg ask for in World.
Some johnk at the StackOverflow chat asked for the multi-line code 
from Carl. I've got that in World, if anybody can use it.
Pekr
29-May-2013
[8049x2]
So - are you willing to exchange the code for the good, even if World 
is closed source? That would be nice of course ...
Red has some basic multiline IIRC too, in its console ... But surely, 
and maybe your offer could be posted in REBOL3 group here ....
Geomol
29-May-2013
[8051]
Yes, I am.
Pekr
29-May-2013
[8052]
Do you have parse already implemented? :-)
Geomol
29-May-2013
[8053x3]
yes, as mezzanine. Look for bparse, split-string, sparse and parse 
in
https://github.com/Geomol/World/blob/master/cortex.w
I guess, it can be easily ported to Red?
I think, string parsing is not 100% yet (need to do more tests), 
but block parsing should be there.
james_nak
29-May-2013
[8056]
Thank you Kaj for your reply.
Kaj
29-May-2013
[8057x5]
It would surely be interesting to try to port the World mezzanines 
to Red
My multi-line implementation is here in console.red. It's fairly 
complete; not sure if you have more:
http://red.esperconsultancy.nl/Red-common/dir?ci=tip&name=examples
No GC in Red yet, though :-(
The viking ship is how I always thought about it :-)
Geomol
29-May-2013
[8062x2]
The license for Red at bottom of
https://github.com/dockimbel/Red/blob/master/README.md

state, that the runtime uses the more permissive BSL license. Why 
this distinction?
:) Yeah, us crazy vikings.
Kaj
29-May-2013
[8064]
Because Red needs to compete with other compilers. Classic compilers 
insert only very small pieces of boilerplate code, so that's free 
of rights. Red inserts the entire runtime and interpreter in compiled 
programs, but it needs to compete with that freedom
Geomol
29-May-2013
[8065]
And Red owner could get into trouble, if not giving permission or 
what?
Kaj
29-May-2013
[8066]
No, but people would complain that when they keep programming in 
C++, their executables are more free
Geomol
29-May-2013
[8067]
Licenses kinda sucks, don't they?


When Mozart visited the sixtin chapel in Rome in 1770, he heard a 
secret piece of music, Allegris "Miserere". From memory, he wrote 
the piece down with all 12 voices or how many, when he was back at 
the hotel. Later he received an order from the Pope. Licenses kinda 
remind me of this. Why show or play something for someone else, and 
then at the same time say, you can't use it? :)
Kaj
29-May-2013
[8068x2]
Yeah, it complicates things a lot
So far I have mostly talked about the ability to write R3 extensions 
in Red and Red/System, because I made a specific bridge for that. 
But with Red's ability to generate shared libraries, you can also 
make generic extensions for other systems, such as R2 and World. 
You can write libraries in Red and then import them with the DLL 
interfaces in World and R2
Geomol
29-May-2013
[8070x2]
nice
If you see any code from me, be it mezzanines or C source or anything, 
use it, if you can! And I don't ask for specific mention. If people 
feel, they got some pieces of gold and wants to mention, where they 
got it from, fine.
Kaj
29-May-2013
[8072x2]
Thanks, that's great!
But a viking deserves a rune stone in his memory, don't you think?
Geomol
29-May-2013
[8074x3]
:) I'll create my own rune stones. (Any someone may create one too, 
but I don't ask for it.)
*And*
I got the red-core interpreter running here btw. That was easy. But 
I miss a HELP function in there.

And I see a lot of functions, so it seems to have come quite a way, 
but no DO of scripts?
Kaj
29-May-2013
[8077x3]
Gregg is working on HELP and WHAT, but it seems to have stalled
I/O is not in Red, only in my extensions. DO is the internal interpreter, 
so it doesn't know about my I/O. It's a good point, I should try 
to override DO
You can start a script when you give its name on the command line, 
even a URL
Geomol
29-May-2013
[8080x2]
I think, it would be a lot easier for e.g. Gregg to create mezzanines, 
if he could do a script with them, like cortex.w and rebol.w in World.
ok
Kaj
29-May-2013
[8082]
Yes, I'll look into it
Geomol
29-May-2013
[8083]
How are Red scripts named? .r or .red or what?
Kaj
29-May-2013
[8084x4]
.red but it doesn't really matter
Note that, even if DO and LOAD currently don't work on files, you 
can still use:
DO READ %file
DO READ "url"
Geomol
29-May-2013
[8088]
ok, good enough for now, I guess.