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

World: r4wp

[#Red] Red language group

DocKimbel
26-Dec-2012
[4934x6]
Reminder: error trapping is not yet implemented, so better type working 
code or you'll be quickly back to Windows console. ;-)
This is just a 4 days work, most of the code was implemented in the 
first 24h, the rest was spent debugging it and adding minor features.
I plan to continue working on it until 1st January to add Unicode 
support to the tokenizer and make the interpreter on par with the 
current compiler. I will then resume the work on object and ports.
I might also implement a cross-platform console if nobody shows up 
to do the job.
BTW, when you call functions from the console (FIRST, PROBE, LAST,...) 
defined in %boot.red, the interpreter will use the compiled version 
instead of evaluating their body....this is just to make Kaj even 
more confused. ;-)
I will also probably make a new major release, bumping the version 
to 0.4.0 when the REPL will be completed.
Gerard
26-Dec-2012
[4940]
Hi Doc: Here is about the above Debug Hook mention. It is drawn from 
http://www.rebol.net/r3blogs/0011.html.Don't miss some interesting 
comments from the 16 then  posted.
Kaj
26-Dec-2012
[4941]
Is this console only for Windows?
DocKimbel
26-Dec-2012
[4942]
Currently yes, I thought making a ncurses-based one too, but my time 
was sucked out by bugfixing.
Gerard
26-Dec-2012
[4943]
@Doc : Don'T miss the STACK function too.
Kaj
26-Dec-2012
[4944]
Hm, I'll have to confiscate Natasja's laptop again, then
DocKimbel
26-Dec-2012
[4945]
Don't you have a Windows VM on a Linux box?
Kaj
26-Dec-2012
[4946]
Yeah, I'll try WINE first, but R# looks awful on it
Gerard
26-Dec-2012
[4947]
@DOc : I forgot the link fopr the STACK SPECS and suggested use. 
Here it is  : http://www.rebol.net/r3blogs/0075.html
DocKimbel
26-Dec-2012
[4948]
Gerard: thanks for the links. It is too early for debug hooks, when 
Red IDE will be there, it will be completly integrated with Red, 
so those debug hooks as a public interface will probably be unnecessary.
Gerard
26-Dec-2012
[4949]
@Doc : Just to be useful with assymetry in series, do you remember 
this TAKE discussion ? http://www.rebol.net/r3blogs/0082.html
Kaj
26-Dec-2012
[4950]
Not terribly confused by boot.red being compiled; I would expect 
anything shipped to be precompiled. Perhaps thinking about it will 
reveal the mystery :-)
Gerard
26-Dec-2012
[4951]
Thanks for your last reply Doc. It's interesting you'va such a golbal 
vision !
DocKimbel
26-Dec-2012
[4952x3]
For the stack, I was planning to add a stack trace on errors display 
in Red, the current REBOL error report is too poor to be able to 
quickly and accurately locate the code lines involved.
Just a small notice: please do not post yet any bug reports about 
the REPL to github, it is too early.
Gerard: reading the comments from your links, all the features people 
mention are on my todo-list for the Red IDE. ;-)
Gerard
26-Dec-2012
[4955x2]
@Gregg : "I'll match donations made by 31-Dec up to USD$200"  I just 
spent 100 Euros a few minutes ago  (about 135 $ CAD) -  Sorry! my 
personal funding is not good enough to give more ... at this moment 
! Xmas is a past thing now so I plan to do better with the New Year 
coming ...
@Doc : Don't despair Doc. We are all behind you - even if I don't 
code for now, as I'm a first day addict, I'll follow your efforts 
regularly and other's too! May be some day I'll be able to send my 
own code ... for something useful !
Kaj
26-Dec-2012
[4957x2]
That's excellent
Doc, it looks like the new dynamic registration support will also 
make it easier to implement user defined types?
DocKimbel
26-Dec-2012
[4959x2]
Yes, that was the idea from the beginning. Until now, I have implemented 
only datatype registration (just missed a dynamic type ID attribution).
I didn't need native/action tables until now, the interpreter made 
me add them sooner than I planned. Extending Red with new natives 
is already possible using simply routines. For new dynamically added 
datatypes , it will be soon possible too at Red/System level and 
with an appropriate interface, from Red directly (with routines when 
needed).
Kaj
26-Dec-2012
[4961]
Very cool
DocKimbel
26-Dec-2012
[4962]
Gerard: thanks very much for your support! I have good faith in Red 
and its future. I have a strong will to make all my plans for Red 
happen. If I can continue to work on it fulltime for a year more, 
I am convinced that, one way or another, Red will have its momentum 
far beyond the AltME community.
Gerard
26-Dec-2012
[4963x2]
@Doc : About the R2/R3/Red console enhancements, I've always missed 
the MS way to move/select  from left to right (on a word by word 
basis - MOVING on a word-by-word is CTRL+left / right Arrow and adding 
the SHIFT key in combination with the CTRL means SELECT - it's that 
simple) but going to the beginning or ending of the line is at least 
a welcome start ... if we want to go this way - and then going right 
or left on a character basis - as is for now!  And for right-handed 
ppl it would also be welcome to restore the old MS way of handling 
the current left-handed ppl to do CTRL-X / C / V  - which were CTRL-DEL 
or SHIFT-DEL / CTRL-Insert / SHIFT-Insert - but this kind of thing 
I can add myself when time comes ... it's just a matter of being 
more productive - it's far from being a "caprice des Dieux". For 
opponents : If you've never experimented it - you then never used 
it either on a regular basis and you can't catch why I regret this 
not being supported anymore in recent MS software too ... but this 
is deceptive either from them since it costs so few to leave it there 
in the first place. However I must admit that on my iPhone and other 
mobile tools I will miss it in anyway - until I code my own keyboard 
for this use too !!!
But Doc I dont' plan you to code these enhancements - it's just a 
reminiscenceof what I had to leave behind with the years that I found 
useful to me - but hard to memorize at first.
DocKimbel
26-Dec-2012
[4965]
Gerard: those are details that can be easily added once the cross-platform 
console will be implemented. If you or someone else will send me 
pull requests for such features at the appropriate time, I will be 
glad to accept them.
Gerard
26-Dec-2012
[4966]
@Doc : I never thought you would do so much work in a so short time. 
If my support can help you a bit to go further and leave behind - 
with the help of the other donators - the bad feeling of having to 
work elsewhere to  get money for your living, then it's a pleasure 
for me to do it as much as I can.  Keep up the good work Doc and 
have a happy new Year form Quebec, Canada.
DocKimbel
26-Dec-2012
[4967]
Thanks Gerard, it does help for sure! I wish I could have done more, 
but as french people use to say: "A chaque jour suffit sa peine." 
;-)
Gerard
26-Dec-2012
[4968]
And my "remerciements" have to go to every direct and indirect contributor 
too (Carl S, KaJ, Peter, Andreas, Ladislav, BrianH, Nick, Maxim, 
Pekr,  Jerry, many guys of the French and other international communities 
too ... name them - there's too much to name all of them without 
leaving someone behind). My best wishes to you all Gang- you're forming 
an exceptionally tight and prosperous team. Your tools are the best 
I saw for being productive and easyness of use. Let's the Red/Red-System 
combination, to be the future C language replacement as the new World's 
low/high level language mix of choice.  Not to be without mentioning 
the REBOL and its loyal followers too (many of the same Red contributors 
but many more like Robert, Cyphre, Henrik ... and many others which 
have found their way while we were waiting for R3 to become open 
source, like Gabriele, Geomol ... - without which we would never 
be here now.
Kaj
26-Dec-2012
[4969x7]
Thanks :-)
Wow, the interpreter and console add all of 3.5 KB to a Red executable 
;-)
Wait, that's probably the console. The interpreter also seems to 
be in an empty executable
It barely runs under wineconsole 1.2.2 though. The character output 
is borked
Seems to be a WINE limitation. Dunno if it's fixed in newer versions:
fixme:msvcrt:_setmode fd (1) mode (0x00020000) unknown
fixme:msvcrt:_setmode fd (2) mode (0x00020000) unknown
Can it be that the Windows PE backend compiles in a random number 
or otherwise random uninitialised values? Windows builds seem to 
change on every build run without Red having changed. This is inefficient 
for my incremental builds repository and makes it hard to validate 
build correctness
Andreas
26-Dec-2012
[4976]
It barely runs under wineconsole 1.2.2 though. [..] Dunno if it's 
fixed in newer versions


Unusable under wine 1.5.20 as well (same setmode fixmes on startup).
Endo
27-Dec-2012
[4977]
Gregg: "Remember, everyone, I'll match donations made by 31-Dec up 
to USD$200."

I just donated 50 eu (68,93 usd) to Doc for the big progress of Red!
Pekr
27-Dec-2012
[4978x2]
OK, just sent another 50 EUR. I also sent 50 EUR on 15.12.2012, dunno 
since when Gregg's doubling applies (should be OK for NickA though) 
....
Doc - console does not seem to support two consecutive expressions? 
E.g. a: 1 print a, crashes ....
DocKimbel
27-Dec-2012
[4980x4]
The interpreter also seems to be in an empty executable
 Yes, it is part of Red's runtime.
_setmode call is used to properly set the DOS console to UTF-16 (Unicode 
mode).
Can it be that the Windows PE backend compiles in a random number 
or otherwise random uninitialised values?

 No, it shouldn't AFAIR, you can open a ticket on the bugtracker if 
 it's the case.
Pekr: thanks for reporting, will look into it.