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

AltME groups: search

Help · search scripts · search articles · search mailing list

results summary

worldhits
r4wp917
r3wp9345
total:10262

results window for this page: [start: 401 end: 500]

world-name: r4wp

Group: #Red ... Red language group [web-public]
DocKimbel:
19-Nov-2012
It doesn't scale well, and as you can see in the following example, 
it can quickly get nasty:


    [/external obj1 [a b] /external obj2 [c d] /external obj3 [e f] /global 
    g h]
Jerry:
19-Nov-2012
Now Red supports 21 datatypes. In the following R3 datatype list, 
datatypes with a minus prefix are not supported in Red yet.


action -binary -bitset block char -closure -command datatype -date 
-decimal -email -end -error -event -file -frame function get-path 
get-word -gob -handle -image integer -issue -library lit-path lit-word 
logic -map -module -money native none -object op -pair -paren path 
-percent -port -rebcode refinement set-path set-word string -struct 
-tag -task -time -tuple -typeset unset -url -utype -vector word
Kaj:
20-Nov-2012
I guess the intermediate format in Red/System 2 will get you that
Kaj:
22-Nov-2012
You can get Red/System speed if you write in Red/System, not if you 
write Red
DocKimbel:
22-Nov-2012
Red is a high-level language with high-level abstract types. Once 
we get optimizations, Kaj's example should run 5-10 faster than R3. 
For some high-level expressions that have low-level counterparts, 
it is possible to achieve very high gains (in the 10-100 range), 
for those that do not have low-level counterparts, you can only expect 
typical gains from moving from an interpreter to a compiler (on average 
5-10 faster).


Also, there is also a source of additional speed gains: the possible 
runtime optimizations enabled by the JIT-compiler.
DocKimbel:
22-Nov-2012
The "RT-like product" separation wouldn't have much meaning in Red 
where you can build your  executables with whatever modules you need. 


We'll define a common "extension" standard (probably based on module! 
datatype) that all third-party modules will implement, so that your 
app could easily use any modules at a cost of a simple "import" directive. 
Such extensions will be typically coded in Red, but with all the 
low-level options, like Red/System routines and bindings to external 
libs.


Moreover, you'll have also the alternative option to build everything 
in a single binary (including third-party libs if they can be statically 
linked). Such thing is impossible in R2 or closed-source R3. In  
 open-source'd R3, you'll be able to do that too, but you'll have 
to get your hands dirty by implementing the bindings in C and using 
a C compiler to produce the executable binary.
DocKimbel:
23-Nov-2012
Pekr: there are several layers at which optimizations can be applied. 
With an optimizing Red/System compiler, you'll already get an overall 
x2-4 boost. Then optimizations at Red level can bring us another 
boost (runtime code can be optimized, compilation output can be optimized 
to be closer to 1:1 with Red/System, when possible). The end result 
should give us, on average, a x10-20 boost over R3. I am pretty confident 
that this can be achieved, given the current results.
DocKimbel:
23-Nov-2012
Now that you mention it, I remember seeing that code. Such code won't 
compile until we get JIT-compilation.

I would certainly wonder why you stop at FIFTH.

Why stop at TENTH? :-)
DocKimbel:
23-Nov-2012
It doesn't make much sense to me to add features that nobody will 
use, just because we can add it, doesn't mean we should. For beginners, 
if they can't get a good picture on picking values with accessor 
up to FIFTH, I can hardly think that adding more will be of any help. 


The only reason for having them is the above code pattern used by 
Carl, but it can't be used for now in Red. Also, users are free to 
add more accessors names in their own code if they feel the need 
for it.
Arnold:
23-Nov-2012
I have my Raspberry Pi now (And an Arduino uno board too). Only have 
to wait until I get it from Sinterklaas now before I can play with 
them.
BrianH:
23-Nov-2012
Arnold, you can support a complete chinese or spanish version of 
R3 using a module and those worda: :wordb value assignements, no 
ALIAS required. But it would be a mistake to do that for educational 
purposes, because it would get in the way of them learning regular 
Rebol/Red code. You might want to do that for non-educational reasons 
though.
Maxim:
23-Nov-2012
aliases can be used with refinements which is a bit weird 

>> alias 'any "xxxxxxx"
>> get/xxxxxxx 'red
== 255.0.0
BrianH:
23-Nov-2012
Also, REBOL-like languages are easy to generate from a dialect. A 
translator could write data files in a dialect, which could be used 
to generate the wrapper functions and assignment statements. And 
a half-way decent optimizer could get rid of the wrappers using the 
same methods that would allow it to statically resolve refinements. 
There's no reason to support an astoundly worse method.
Arnold:
24-Nov-2012
I have to wait to start programming my Raspberry Pi until I actually 
get it from Sinterklaas. After that I can try to test Red on it. 
I watched your presentation on programming in Red on the Raspberry 
Pi. No Syllable yet? WHat Linux did you use on the Rasp again Kaj?
Kaj:
25-Nov-2012
Actually, when you use a typed constructor function, you already 
get access to the arguments array, but it's an array of stuct!s of 
type typed-value!
DocKimbel:
25-Nov-2012
If I open a window console and run the program I can not compile 
it anymore (it is locked by the console?), and if I try to run it 
in Rebol with call/console ... it hangs. 


I don't get this part...Your program seems to be still running while 
you think it has finished.
Pekr:
30-Nov-2012
The cool stuff to show-off would be - bring your Red on your SD card/USB 
stick, plug-it-in, go to its dir = show "no-instal" option, show 
some GUI dialect, press a button, generate android app, and with 
one command or a dialect, push it to Google play. Then I can send 
you my friends short/long description, how long it took him to get 
his app there, downloading and installing all the JAVA crap and all 
dependencies ...
AdrianS:
30-Nov-2012
A couple of observations: I would think that the slow going with 
View had a lot to do with the size of the community as well as an 
architecture that didn't easily permit the use of vector graphics, 
preferably designed using external tools, for drawing widget states. 


WRT Red, it makes sense to use native controls in order to get off 
the ground quickly, but the UI subsystem should allow for owner drawn 
controls. By allow for, I mean that these should be able to exist 
side-by-side with native controls, and, if defined using a vector 
source, widgets should do bitmap caching at the appropriate times 
for better performance. I guess what I'm saying is to please think 
about how owner drawn widgets would fit into whatever is the initial 
implementation.
Gregg:
30-Nov-2012
I agree with Henrik 90%. The hard part is picking the target app 
and important elements. A game, or modern app with animation elements 
is a very different target than an "efficiency above all" business 
app. One of my failed attempts with REBOL was to get Carl, for just 
this reason, to identify a target audience. It guides your design. 


In the case of a Red/REBOL GUI, maybe there is no single design or 
dialect. Making small apps simple is hard to match to the needs of 
complex apps. If you're writing database/CRUD apps, wouldn't it be 
great to have a toolset designed just for that? That same toolset 
won't work well for games though.


I think using an IDE as the first target app is a *fantastic* idea. 
It covers a lot of areas, including the possibility of building on 
an extensible app framework (something lighter than Eclipse :-), 
files, documents, workflow, tool integration, customization, and 
many UI elements. And *we*, developers, are the target audience.
Gregg:
30-Nov-2012
Of course, I prefer REBOL data, with makedoc being my preferred markup 
format. I don't know if Carl's WIP wiki is worth asking about, or 
another wiki engine or site would not lock us in too much. Some of 
us did some work on a wikimedia interface for R3 docs, which didn't 
get far. And I have a wikidot site we can play with if people want.
Pekr:
30-Nov-2012
And I even don't agree with Henrik. I really can't see, how your 
top-down aproach might work. You need a solig gfx engine (View), 
general enough, to build up. Carl's GUI was OK. And imo Saphirion 
did a bad mistake - we heard, for so long time, that the look is 
the final step. All those years, and the look is really a crap. Much 
worse, than what Carl brought up, even if I can see many improvements 
in engine itself. Look sells, take it, or leave it, and then - please 
don't even try to do your own GUI. No matter how good it is, if it 
looks like 80'ties Solaris, it will never get accepted ...
DocKimbel:
30-Nov-2012
Pekr: you don't get the right picture. When I mention "native widgets", 
I am mainly referring to the ones provided by each OS, which is what 
most users expect to find in an app for their OS, and what most developers 
wants, is to provide a consistent experience for users. So, actually, 
such approach will be lighter then /View, because the OS provides 
you with everything you need. In the case of Linux, GTK is the main 
standard and it is built-in many distros, so that is the one we will 
probably use for Linux target and you don't need to provide it with 
your app.
Pekr:
30-Nov-2012
I tried to attract Cyphre, unfortunatelly he has new View like engine 
in mind, which would require some extensive resources to spend to 
get that. And I don't have such resources, so I am "a bit" nervous 
:-)
Pekr:
30-Nov-2012
Doc starts with a kind of dialect - some midd level. Kind of what 
Henrik called top-down, but with good thinking ahead. you mostly 
write VID-like dialect, which would get (not necessarily 100% automatically) 
compiled to target platforms. So on Android, it looks like andorid, 
etc., but also - for small embedded - either html5, or View ...
Gregg:
30-Nov-2012
Petr, don't lose focus. The train is going in your direction. Just 
get out of the way. :-)
Pekr:
30-Nov-2012
Gregg - no need to make me look dumb. My wishlist.txt is just one 
line - get the small cross-plaftorm View like engine for Red available 
too - it might be attractive to many ppl, easy as that ;-)
Arnold:
1-Dec-2012
As far as the wish for a View/VID native solution goes, I wish that 
as well. Maybe it will be possible when the JIT compiler becomes 
reality to easily adapt Rebol's VID. 

It does not have to be complete like VID, a basic set of widgets 
will get you a long way.  

Other solutions are a really good thing too, but looking at GTK and 
myself I find it hard to find out how to get GTK on my mac. It is 
not a standard dmg file I can download and install and it works. 
Other GUI solutions require integration of their package or having 
the end user of your programs to find out how to get it running on 
their machine. That kind of thing can be a real showstopper to global 
acceptance.


I know Doc is working hard and has already stated he intends to come 
up with a VID like native solution. So we can let him focus and be 
silent ,or we can comment and discuss letting him know we do care.
DocKimbel:
4-Dec-2012
A mention about THROW function attribute: I will add support for 
it, but it won't be usable until we get  dynamic function creation 
support.
DocKimbel:
7-Dec-2012
Thanks, I need first to get a Visa, so it is not done yet.
DocKimbel:
7-Dec-2012
The lexer is choking on get-word used in path...let me see that...
DocKimbel:
7-Dec-2012
Steeve: I have fixed the lexer bug, so it should at least load correctly 
now. But paren! in path are not yet compiled, so you'll get a "feature 
not implemented" at compilation.


Also, passing a function as argument is not yet correctly handled. 
Also I'm unsure if s/:step: will be compiled correctly, as we haven't 
yet much tests for path accesses.
Maxim:
7-Dec-2012
the following are currently invalid REBOL notations (the first three 
load in R2 but get scrambled)

I prefer the first tree, since they are pretty obvious without any 
knowledge of the language.

16#FFFF000F
8#7124554764
2#0110110101

H#FFFF000F
O#7124554764
B#0110110101
DocKimbel:
9-Dec-2012
How do one know a rebol function is supported or not ?

 Currently, only by looking in the source code. The compiler is lack 
 a lot of checks, so you need to get your Red code right for now.
DocKimbel:
10-Dec-2012
What about to convert all the words into lowercase in compile time?


Words values are not "compilable", they are data (words used as variables 
can be "compiled" to some extents). Converting all words into lowercase 
during compilation (including JIT-compilation for words constructed 
at runtime) would make you loose the ability to distinguish lower/upper-cased 
letters, leading to big issues and pitfalls in the language. For 
example: (form 'A) = "a" (beause 'A would get converted to 'a). Not 
an option.
BrianH:
10-Dec-2012
Yes, that's what I meant. I phrased it that way because there was 
a big discussion where people were requesting that an option be added 
to objects to have them be case-sensitive, to distinguish based on 
case when mapping words to value slots, rather than the case-preserving 
default. We had to reject that proposal because there was no way 
to specify that option in the make object! syntax. The only way to 
do that in Rebol is to have a separate object-like datatype that 
has case-sensitive word mapping. The same proposal was made for maps, 
with the same results: a case-sensitive alternate type would be required. 
For both of those types, SELECT vs. SELECT/case could have some meaningful 
distinction, though we didn't get far enough for that to be an issue 
yet.
Arnold:
12-Dec-2012
Red development is on the Jazz. Don't get distracted by the release 
of R3 sources. Keep rolling the Red dice :)
Gregg:
15-Dec-2012
Janko, every bit counts. I've donated this month, but I will match 
December donations in a January donation, up to USD$200. So, donations 
in December get double matching up to USD$200, if Nick matches as 
well.
DocKimbel:
15-Dec-2012
Red 0.3.1 released: http://www.red-lang.org/2012/12/red-v031-functions-support-added.html

- function support
- path get/set notation support
- refinement support for native functions
- expressions in parentheses compilation

- new datatypes: function!, paren!, path!, lit-path!, get-path!, 
set-path!

- new actions and natives: find, select, copy, reflect, type?, halt,...

- extended mold, form and comparison operators to all new and existing 
datatypes
- many new mezzanines functions

- modulo and remainder operators on floats implemented for ARM backend
- Quick-Test testing framework ported to Red
- a truckload of new unit tests
- many bugfixes
- about 200 new commits to the Github repository
- updated Red/System formal description document
DocKimbel:
22-Dec-2012
I would like to get rid of it, for many reasons. Firstly because 
it was not meant to be part of Red/System, but added later for practical 
needs, secondly because Red/System code could be built/composed more 
efficiently from Red.
DocKimbel:
23-Dec-2012
Pekr: thanks, I hope to get the device + SDK in January. My application 
to their developer program was based on an innovative IDE for Red 
powered by Leap Motion device. ;-)
Jerry:
23-Dec-2012
### Red/System Question ###
To get cpu count, I can do this in C:
   
   sysctlbyname("hw.ncpu", &cpuCount, &len, ((void *)0), 0);


But Red/System doesn't support &. How can I do this in Red/System? 
Thanks.
Jerry:
25-Dec-2012
Red/System Questions:


I am translating a piece of code from C to Red/System, I don't know 
how to translate the following C code:


success = OSAtomicCompareAndSwapPtrBarrier(NULL, newzone,  (void 
* volatile *)&_zone_); // C

my problems are: 

1. In Red/Sys, _sqliteZone_ is a struct! (which is a pointer in Red/Sys), 
so I cannot use :_zone_ to get it's address.
2. "(void * volatile *)" in C => "as byte-ptr!" in Red/Sys ??

Thanks!
Jerry:
25-Dec-2012
1. _zone_ is a struct pointer. I need to pass a pointer to a struct 
pointer as the 3rd parameter, that's why I try to use get-word here.
DocKimbel:
25-Dec-2012
For 1., you can achieve it this way:

    s: declare struct! [n [integer!]]
    p: declare int-ptr!
    p/value: as-integer s

then `p` becomes a pointer on `s`.


I might extend get-word syntax to struct! and pointer! too, someone 
just needs to add a ticket to Github to remind me of that.
Kaj:
25-Dec-2012
Speaking about atomic operations, any thought to get them in Red/System? 
I could use them well
DocKimbel:
25-Dec-2012
BREAK will probably be implemented before 2.0 (not sure for CONTINUE). 
So, you can't break from a loop currently. 


As a workaround, you can EXIT/RETURN instead. So if you write your 
loop in a separate function, you'll get similar effect as with BREAK.
DocKimbel:
26-Dec-2012
The console is currently just a Red script, once we get devices and 
ports, it will be replaced by a proper console:// port.
DocKimbel:
26-Dec-2012
Right, if you bench from the console, currently, you're just measuring 
the speed of the interpreter. When the JIT will be there, loops from 
the console might get JIT-compiled, so it will be even less relevant 
to bench from the console. My plan since the beginning is to add 
a profiler to Red, so you'll be able to make precise comparisons 
whatever way the code is run.
Pekr:
26-Dec-2012
brianh - imo noone can get acustomed to that weird windows black 
crap :-) R2 is better experience. Carl admitted, that he might return 
r2 console to r3 codebase, and let ppl to develop it further ...
Gregg:
26-Dec-2012
Now, if we can get Doc enough funding, he may be able to direct some 
of it to people he can work with, which would be great, and we can 
set up bountys as well.
Gerard:
26-Dec-2012
@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:
28-Dec-2012
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.
DocKimbel:
29-Dec-2012
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).
Marco:
30-Dec-2012
Since Red compiles to Red/system, how can I get the red/system source 
result?

Red is simpler to use but sometimes we want speed so why not let 
red compile to r/s

and then use that source to make a routine! or as a stand-alone program?
Kaj:
30-Dec-2012
I'll get around to reporting some issues later tonight
Arnold:
5-Jan-2013
An altenative for preprocessor command could be
.if
(It starts in column 1 doesn't it?)

On the other hand isn;t it possible to get the meaning from the context? 
#if #define etc could be preversed preprocessor words?
(or I am on a complete other level again this time)
Gregg:
6-Jan-2013
Still, I'm sure I could get used to keyword! as it could be interpreted 
clearly in the different contexts where issue! is used today.
DocKimbel:
9-Jan-2013
Actually, every statically defined Red function will get compiled, 
only functions created at runtime will be passed to the interprerter 
(or JIT-compiled).
DocKimbel:
9-Jan-2013
We could remove the body block of compiled function! values, yes, 
so it doesn't get added to the executable. That could be an optional 
switch that would also disable undefine 'body-of accessor.
DocKimbel:
11-Jan-2013
Well, I try to switch to dark themes to both save powers and my eyes. 
;-) 


I've provided a switching option to more classical "light" theme 
for the docs, but doing the same for the web site was too much work 
for me, so I've left it with the dark theme only. I will fix that 
once we get a new web site for Red (or if someone skilled enough 
can make the changes, I'll be glad to push them online).
DocKimbel:
14-Jan-2013
Arnold: if you use DECLARE on pointer! or struct!, you already get 
an automatic memory allocation done by the compiler for you. Such 
memory will be statically allocated from the data segment (defined 
by the executable). 


Alternatively, you can use ALLOCATE to get a memory buffer for your 
array during the execution of your program (just don't forget to 
release it with a FREE call at some point).
Arnold:
29-Jan-2013
The Rde presentation shows the use of the binary Red. In it shows 
how to compile to get a cgi and a dynamic library. Are these also 
implemented in the current compile scripts? In that case that holds 
a good argument to update the Redcompiler.r script. It needs some 
work anyhow I noticed, it is rather location dependent atm.
Kaj:
1-Feb-2013
Red []

#include %GTK/GTK.red

view/title [
	text: area
	button "Do" [
		unless any [
			none? script: get-area-text text
			empty? script
			empty? code: load script
			unset? result: do code
		][
			prin "== "
			probe result
		]
	]
	button "View" [
		all [
			script: get-area-text text
			not empty? script
			not empty? code: load script
			view code
		]
	]
	button "Quit" close
] "Red GTK+ IDE"
Pekr:
7-Feb-2013
Bo - R/S is low level - mostly a wrapper to C to enable Red like 
syntax. It will not contain stuff to open files and do more advanced 
things imo, unless you link to some library and create a wrapper 
for such a purpose. I am too eagerly waiting for Red to get more 
advanced stuff. I think, that once Doc finishes the interpreter stuff 
ec., he is back to objects/ports, and then networking/files IO will 
come and more fun begins :-)
BrianH:
7-Feb-2013
Some optimizations will be very difficult or impossible to do if 
Red/System is used as the intermediate language, because those optimizations 
sometimes depend on the semantic model of the intermediate language, 
and Red/System doesn't have the semantic model of a compiler intermediate 
language. Optimization is hard work and people get PHDs for doing 
it. We can hope to catch up with modern C compilers, but don't expect 
it. One advantage is that Red is a high-level-enough language that 
an optimizer can make assumptions that a C compiler can't, so it 
is possible that we could get better code - it depends on the language 
and how much time we want to allocate on optimization.
Kaj:
8-Feb-2013
It is. :-) If you run the download.r script, you'll get it automatically
Kaj:
8-Feb-2013
You're right about LDA #. :-) It's also $A9. I had the same problem, 
wrote a disassembler in Atari BASIC until I could get hold of an 
assembler, so also have a considerable part of my brain dedicated 
to such numbers :-)
Bo:
8-Feb-2013
With the following code:

#include %GTK.reds

with gdk [
	err: declare struct! [value [g/g-error!]]
	myimg: load-image "image.jpg" err
]

I get the following error:


*** Compilation Error: invalid literal syntax: [value [g/g-error!]]

If I change it to:

err: declare struct! [value [c-string!]]

I get the following error:


*** Compilation Error: argument type mismatch on calling: gdk/load-image

*** expected: [struct! [value [g/g-error!]]], found: [struct! [value 
[c-string!]]]
Kaj:
11-Feb-2013
cycle: func ["Cycle a series through its index."
	'series [word!]
	/local s
][
	either tail? s: get series [
		set series  next head s
		first head s
	][
		set series  next s
		s/1
	]
]
DocKimbel:
18-Feb-2013
It would be possible to support it in the compiler too, but that 
would require that the `h` argument get declared with a type definition 
like: 

    g: func [h [function! [a]][...]

(not implemented yet though)
Pekr:
1-Mar-2013
well, Bo, explained it better. I am not saying that you are not planning 
it, I was just asking, if it is planned, because other point of view 
might be, that we will get some very core funcionality, plus millions 
of nice wrappers, but that would make a different feeling ...
Kaj:
1-Mar-2013
As we discussed before, you can get JPEG data from the GDK binding, 
but you have to finish the struct definition
Bo:
1-Mar-2013
@Kaj: I'm trying to get the JPG data without having X11 installed. 
 If I were to do something with LibJPEG directly, I would try to 
make it look like the R3 image! datatype.
Arnold:
3-Mar-2013
Sorry Doc, it is hard to get-and-keep up to what you all achieve!! 
(And Kaj too) Even though I myself have less hours at my job I do 
not have as much time to follow it all. (More projects and chores 
in and about the house to do now and less 'spare' time at work for 
a quick review.
Arnold:
3-Mar-2013
I will try to answer the question of how I see possibilities to make 
Red more suitable for funding. And have it get the attention a first 
proper release needs. Everybody else is hereby invited to think along 
how to make this possible.
Pekr:
4-Mar-2013
RaspberryPi coming in luxury blue version - wonder, when we get Red 
one? :-) http://www.engadget.com/2013/03/04/raspberry-pi-coming-in-limited-edition-blue/
Bo:
4-Mar-2013
I was trying to evangelize Red/System to the Raspberry Pi forums 
today, but found it difficult to point them to a "here's how you 
get started" page.  That would be the perfect thing for a "Downloads" 
page on red-lang.org.
DocKimbel:
5-Mar-2013
here's how you get started

 page" is Github Red page. There you have links for downloading an 
 archive or cloning the repo and all step-by-step instructions to 
 get you started.
Pekr:
5-Mar-2013
Doc - I was quite surprised with your argumentation. I really don't 
know, if we are so much in an IT, but are you guys serious, that 
for normal user, in order to just give some tool a try, such user 
should use systems like Fossil or Git? I find myself competent enough, 
but unless new Windows client appeared, it was just nightmare to 
get things going, especially if one does not feel the need to understand 
all that pull/push etc. stuff.
Bo:
5-Mar-2013
Pekr: Agreed...that was my initial suggestion.  My further suggestion 
is to have instructions right after those links stating how to get 
started with Red/System and also Red.  A simple step-by-step for 
beginners.
Paul:
5-Mar-2013
I obviously, work as a Windows debugger using most of the core Windows 
Debugging tools and Systems Internals so I could contribute along 
those lines until I get knowledge of RED.
Kaj:
5-Mar-2013
The easiest way to get all the files is to use the download.r script:
Kaj:
6-Mar-2013
No need, I'd like to get on with my work
BrianH:
6-Mar-2013
I have that bookmarked, but haven't yet looked it over thoroughly. 
I noticed that the last time I tried to determine R3 syntax the effort 
generated a lot of bug tickets. The same would likely happen once 
I get a chance to go over Red syntax, and they may end up being a 
lot of the same bugs. Some syntax issues are an inevitible result 
of being in the same syntactic family, and not realy arbitrary when 
you consider the balance of the entire syntax.
NickA:
7-Mar-2013
Features like that need to be provided, not created by the user base. 
 There's no motivation for anyone to get involved if the feature 
set isn't complete.
DocKimbel:
7-Mar-2013
http://lessons.runrev.com/spaces/lessons/buckets/809/lessons/12304-How-do-I-use-Unicode-in-Rev-

In "Using character chunk expressions with unicodeText" section:

    set the unicodeText of field 2 to the unicodeText of field 1


Wow...doesn't look like Livecode scales up very well. In Rebol/View:

    set-face field1 get-face field2
DocKimbel:
7-Mar-2013
Kaj: you'll have refinement and paths support tonight for the runtime 
lexer. I will add some more interpreter tests tomorrow and prepare 
for a new release (0.3.2) this weekend focused on the addition of 
the interpreter.

Arnold: you'll get your new blog article in a couple of days. ;-)
BrianH:
7-Mar-2013
Pekr: "That is understandable, but it almost feels like a push - 
either do it R3 way, or it is your bug :-)"


Not always. R3 isn't done yet either. Remember, we're still catching 
up with a 2-year backlog of pending design changes. Some of its design 
experiments have turned out to be bad ideas for reasons that weren't 
known at first, or in some cases discovered by Red. So sometimes 
R3 is the one that needs fixing, and much sooner because R3 is going 
to get to 3.0 long before Red's design is set.


There are real advantages for Red and R3 to declare that incompatibility 
in comparable situations should be considered a bug, especially then 
it comes to syntax, and sometimes when it comes to semantics (ie 
indexing). But I don't assume that either R3 or Red in in the right. 
More often these incompatibilities are a sign of things that haven't 
been fully thought through, and once they are it could be R3 or Red 
that needs fixing, or in some cases both.


But, in the scale of history, Red is much earlier on in its design 
process than R3 is. R3 is more towards the end, closer to release. 
So that means that any changes that might break the *core* semantics 
or syntax of user code need to be made very soon, before 3.0 comes 
out and sets the standard. Red can afford to make those changes later 
because it isn't anywhere near the point of standardization. So if 
there are design flaws in R3 that might be comparable to something 
that would affect Red, they need to be fixed earlier in R3 (not by 
the Red people unless they're into that). And it would be useful 
for Red if people would participate in the R3 design discussions 
for stuff that would affect Red too because Red would benefit from 
the discussions regardless of compatibility, and also benefit from 
being compatible with the results.
DocKimbel:
7-Mar-2013
State of Red's PARSE: 


It's not on the roadmap because it's too low-level for the bird view 
(maybe I need to add it anyway?). Moreover, PARSE is not (for now) 
useful for the internal construction of Red/System and Red, so from 
that perspective, it's quite low-priority.


OTOH, it is quite simple to implement in Red/System, and users could 
see that as a sign of good progress, so I probably need to schedule 
it for a weekend to implement a R2-level PARSE (with a couple of 
features from R3's PARSE) and a few more days to test and debug it.


Also, Gabriele is interested in implementing a "compiled" PARSE version 
for Red, but unfortunately, Red has not yet all the features that 
Gab needs for it (mainly object! support). So, he's waiting on me 
to get Red ready first.


As currently, object! support is much more important to implement 
(for completing the context/binding model of Red and enabling ports) 
than PARSE, you might get Gab's version first. Also if it's fast 
enough, I wouldn't need to make a Red/System version then.


Last but not least, I don't agree with 100% of the changes/addition 
in PARSE for R3, so I would need to review R3 parse and make a "cleaned-up" 
version for Red. Also, Topaz has some interesting improvements on 
PARSE what I might want to include in Red's version too, so that 
needs a bit of preliminary review work.


So, as you can see, it's hard to give you a precise timeframe, I 
guess we would have a first version of it during Q2 2013.
BrianH:
7-Mar-2013
Some of the new operations were added to reduce bugs by having clean 
implementations of things that PARSE users frequently need to do 
but usually get wrong, such as CHANGE, INSERT, REMOVE, IF, THEN, 
AND, NOT, QUOTE and DO. The modification ops are the ones that lead 
to the most frequent R2 parse errors.
DocKimbel:
7-Mar-2013
BrianH: compiled dialect is what Gabriele wants to implement. It 
should indeed be efficient in Red. About the review, I think we should 
get it organized somehow, I know that Gabriele has also some words 
to say about it too. But this can wait for a few more weeks.
Ladislav:
7-Mar-2013
implementations of things that PARSE users frequently need to do 
but usually get wrong, such as CHANGE, INSERT, REMOVE, IF, THEN, 
AND, NOT, QUOTE and DO

 this is where I *must* disagree. THEN seems to be infrequent, CHANGE, 
 INSERT and REMOVE are not frequent either according to my experiences 
 (nor they should be frequent), DO is a typical "one user feature".
BrianH:
7-Mar-2013
I agree about THEN though (that was a Carl thing), and to some extent 
DO. For DO in particular I have seen people request help doing stuff 
like that frequently enough, but they either give up or are capable 
enough to not get it wrong.
DocKimbel:
8-Mar-2013
I get here:

    red>> print x * 5

    *** Script error: action 13 not defined for type: 2
Kaj:
8-Mar-2013
It does, you don't get the functionality and fixes in master, and 
it's hard to install
DocKimbel:
8-Mar-2013
I've almost implemented file! completly this morning, but am now 
trying to get the multi-line strings literals recognized by both 
compiler and runtime lexers. A bit harder that it seems at first 
look, but should be ready for tonight anyway.
DocKimbel:
8-Mar-2013
I just added char! to LOAD. It doesn't support the whole set of escaped 
sequences, only the most used once. Also, the molding of codepoints 
< 32 is not escaped yet, so you'll get strange results on screen.


I'm working on improving MOLD on string! and char!, to better support 
escaping of special characters and correct usage of {} braces when 
required.
DocKimbel:
8-Mar-2013
I probably won't have time to finish file! before going to sleep, 
so you'll get it tomorrow.
DocKimbel:
8-Mar-2013
Better specify it clearly each time you announce comparative performances, 
else people will generalize it and get a wrong picture of the real 
performance ratios. 


Fibonacci basically tests the efficiency of the function calls. A 
test with a bigger loop could be interesting. For example, you can 
take the %demo.red script and strip all screen outputs, add a LOOP 
around the main code and  you'll should see much bigger differences.
DocKimbel:
8-Mar-2013
Kaj, what matters in such benchmark is not the usefulness of the 
resulting data, it is how the test stresses the language implementation. 
From that perspective, Fibonacci just tests the efficiency of nested 
calls, nothing else, no series manipulation, no memory allocation, 
very limited math, very limited control flow, ... The demo code will 
stress more parts of the implementation, hence giving you a more 
accurate picture (closer to what user will experience with their 
own scripts).


If you take the language Shootout tests, each test is meant to stress 
a specific part of each language, giving a good (and quite fair) 
comparison for each category.


I think we should implement them in order to get a good picture of 
Red performances and how they evolve. Anyone interested in implementing 
them? http://dada.perl.it/shootout/
401 / 102621234[5] 67...99100101102103