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

World: r4wp

[#Red] Red language group

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.
Gregg
27-Dec-2012
[4984]
That's great Endo! I'm glad Doc's hard work is turning into donations, 
so he can see real support for the project from others. Kaj and Peter 
are doing a lot to help him, and I hope to make time in a few weeks 
to show my support with action as well.
DocKimbel
27-Dec-2012
[4985]
Petr: issue fixed.
Kaj
27-Dec-2012
[4986]
Console binary updated
Kaj
28-Dec-2012
[4987]
Console binary updated with the added conditionals
Pekr
28-Dec-2012
[4988]
it almost seems, like you have to reimplement all the Red functionality 
for console?
Kaj
28-Dec-2012
[4989x2]
Nah, just another wrapper over the existing runtime
I think the interpreter added less than 10 KB to the binary
DocKimbel
28-Dec-2012
[4991x2]
Pekr: just the natives that are processed as keywords by the compiler 
and that don't needed a runtime counterpart until now. Anyway, as 
you can see from the commits, it's just a thin layer.
didn't need
Kaj
28-Dec-2012
[4993]
Console binary updated with the added loops
DocKimbel
28-Dec-2012
[4994x2]
Thanks Kaj.
Kaj: congrats on the first binding made available to Red! :-)


I've noticed in %examples/do-sql.red the comment for #include:  "FIXME: 
#252". Actually, #252 is for Red/System, Red  implements its own 
#include which behaves differently than the Red/System version. I've 
tried to make it more intuitive, but it still needs some adjustments, 
so feel free to open new tickets about that (with simple concrete 
test cases I can reproduce). 


Also keep in mind that #include at Red level is intended to be a 
temporary feature until we get DO, LOAD and READ working with files. 
I would like an include system that could work both for the interpreter 
and compiler without having to change any code. I'm not sure this 
is achievable, so in worst case, we'll keep #include as fall-back.
Kaj
28-Dec-2012
[4996]
Yeah, there's a question mark behind it because I wasn't sure it's 
the same issue, but #252 is the closest
Jerry
28-Dec-2012
[4997]
I think SQLite-binging was misplaced in "Red/System contributions" 
Section in Red-lang.org. It's Red not Red/System. ... Good to know 
that SQLite Binding is done. Thanks. Kaj.
Kaj
28-Dec-2012
[4998x2]
Until ten minutes ago it was a Red/System binding. :-) Now it's both 
a Red/System and a Red binding, built on top of the Red/System one
The same will happen with my other bindings
Janko
28-Dec-2012
[5000x2]
wowo! for the console interpreter and bindings!! awesome
I sent 70eur in from 14.Dec to now (for NickA or Gregg deals / btw 
thanks for that).
DocKimbel
28-Dec-2012
[5002]
Janko: thanks for your donations!
Kaj
29-Dec-2012
[5003x3]
Shouldn't block/rs-head and rs-tail have a /local s ?
Same for string. Perhaps it comes out of string/rs-length? which 
doesn't have s
block/copy seems to need /local s too
DocKimbel
29-Dec-2012
[5006]
Yep, copy/paste bug.
Kaj
29-Dec-2012
[5007x2]
I've implemented the first string marshalling in the SQLite binding, 
of the version identifiers
version: routine [  ; Return SQLite version.
;	return:				[string!]
	/local				version
][
	version: sqlite/version
	SET_RETURN ((string/load version length? version))
]
DocKimbel
29-Dec-2012
[5009]
You should wait for me to add the marshalling and unmarshalling functions 
(that will be used everywhere Red needs to interface with non-Red 
code). In your code example, it should be: 1 + length? version (as 
it needs to account for terminal NUL character). Also, you need to 
get sure that the source c-string! buffer is always available or 
make a copy of it (a pointer to it is stored as a UTF-8 cache, unused 
yet, but intended for speeding up I/O, still experimental, not sure 
it will stay for v1.0).
Kaj
29-Dec-2012
[5010]
I was wondering about those things. There's not much I can do then 
to make working bindings currently
DocKimbel
29-Dec-2012
[5011]
I'll try to speed things up.
Kaj
29-Dec-2012
[5012]
Don't tremble apart when passing the sound barrier ;-)