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

World: r4wp

[#Red] Red language group

Marco
10-Mar-2013
[6223]
I suggest to change the relaive part of "Readme.md" to:

Running the Red/System hello script
------------------------

1. From the REBOL console type:

    `call/show ""` ; (type this only once to fix Rebol 2 bug)

    `change-dir %red-system/`

2. Type: 

    `do/args %rsc.r "%tests/hello.reds"`
	

    the compilation process should finish with a `...output file size` 
    message.


3. The resulting binary is in `red-system/builds/`, go try it! type 
(on Windows):

    `call/wait/shell/console %builds/hello.exe`
Arnold
10-Mar-2013
[6224]
Tell the Red interpreter "find a slash" and it finds one, Now that's 
programming computers! 
Hurray for file! support!
DocKimbel
10-Mar-2013
[6225x5]
Right, it could teach Rebolbot a few tricks. ;-)
Marco: thanks for the proposition. Exposing Rebol bug in the first 
commands that a new user has to type to run Red compiler, is really 
not appealing.
Also, this bug occurs only on Windows, so having users from other 
platfomrs type it too is overkill. I would like to reduce the steps 
and commands to type for running the Red(/System) compiler (especially 
for the first time), not increase them.
Fortunately, these steps are temporary, once we get the compiler 
encapped, it should be a one-liner.
Kaj, about relaxing errors in interpreter (avoiding quiting), it 
is easy to achieve (just remove the `halt` found in interpreter and 
%context.reds), but it is problematic because letting these errors 
pass will let the Red stack in an invalid state which will often 
result in subsequent crashes (until we add proper error support in 
Red).


So, I propose an alternative solution: add VALUE? (and maybe other 
natives if required), to allow you to validate the input before DOing 
it. What do you think?
Kaj
10-Mar-2013
[6230x9]
Would that work on LOAD?
Can't you just return unset! from an undefined path, like for an 
undefined word?
I suppose the ReadLine library I use in console-pro can be programmed 
for multi-line input, but I don't know how, so it currently takes 
single lines
On Windows, it works the same as yours
Endo, people without cookies can't see anything on Trello
red>> [w:]
== 
*** Runtime Error 1: access violation
*** at: 084980F3h
Oh, that's probably the missing load/all
Yes, but:
red>> do [w:]
== 
*** Runtime Error 32: segmentation fault
*** at: 096F70F2h
DocKimbel
11-Mar-2013
[6239x2]
I get here:

red>> do [z:]
==
*** Script error: action 6 not defined for type: 0
Can't you just return unset! from an undefined path, like for an 
undefined word?

I will give it a try.
Pekr
11-Mar-2013
[6241]
Nenad - Happy Birthday to you, and so to your brain-child - Red :-)
DocKimbel
11-Mar-2013
[6242]
Thanks Peter! :-)
Gregg
11-Mar-2013
[6243]
If it's Doc's birthday, we should give him a present and donate to 
his child's future. 

Happy Birthday Doc.
Henrik
11-Mar-2013
[6244]
HBD, doc. :-)
DocKimbel
11-Mar-2013
[6245]
Thanks guys! :-)
NickA
11-Mar-2013
[6246]
Made a little donation - happy birthday!
Pekr
11-Mar-2013
[6247]
I will donate in few days, once my salary arrives :-)
Gregg
11-Mar-2013
[6248]
Remember, I'm matching donations, birthday or not, until the end 
of the month, so Doc gets double presents.
DocKimbel
11-Mar-2013
[6249]
Nick: got it, thank you very much!
Endo
11-Mar-2013
[6250]
Happy Birthday Doc!
Kaj
11-Mar-2013
[6251]
I thought it was last month, Doc, but if it was today, happy birthday!
DocKimbel
11-Mar-2013
[6252]
Thanks!
Kaj
11-Mar-2013
[6253x4]
With the latest version, I still get
red>> do [z:]
== 
*** Runtime Error 1: access violation
*** at: 0851C0F3h
That's in console-pro. Oddly, in your console, it indeed gives the 
action error
Would it be hard to have the undefined warnings print the name of 
the undefined word/path?
DocKimbel
11-Mar-2013
[6257x2]
Actually, that's part of error! handling, I can't do it right now 
it would delay the release too much...
I can have a quick look at it though, if it's just a few lines of 
code, I'll add it.
BrianH
11-Mar-2013
[6259]
Doc, what is your opinion about what FOR and FOREACH should do for 
the obviously never advancing case? Error triggered or nothing done?
DocKimbel
11-Mar-2013
[6260x2]
Is there a CC ticket about that?
At first look, I'd say nothing done as it can be useful to disable 
a code block in a loop passing 0 as looping number (or empty block 
in case of FOREACH).
Kaj
11-Mar-2013
[6262]
Are we talking about never advancing or never executing?
BrianH
11-Mar-2013
[6263x2]
Never executing. Never advancing means executing endlessly.
That method of disabling a loop block would be in addition to passing 
none as the data (for foreach)?
Kaj
11-Mar-2013
[6265x2]
In that case, it seems obvious to me to do nothing. That's a regular 
construct in programs
red>> do *
Error: feature not implemented yet!
bash-4.0#
DocKimbel
12-Mar-2013
[6267x2]
I tried avoiding the error propagatin, but it's too complex, so it 
will stay as is until error! is implemeted.
The changes I made in the interpreter for not exiting the console 
on errors have a very bad side-effect: some errors are passing silently 
through the unit tests and are not reported! :-/
Kaj
12-Mar-2013
[6269]
Hm, well, I suppose it's good practice for implementing error! ;-)
DocKimbel
12-Mar-2013
[6270x2]
I can't on error! until next week, my planning is full.
<work>
Kaj
12-Mar-2013
[6272]
This one has an assortment of effects: