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

World: r4wp

[#Red] Red language group

Paul
5-Mar-2013
[5799]
I was going to run download.r with REBOL but when I double clicked 
it - it launched.  I'm assuming fossil.exe had something to do with 
that.
Kaj
5-Mar-2013
[5800]
Fossil shouldn't affect that. What do you mean by launching?
Paul
5-Mar-2013
[5801]
I wasn't expecting download.r to launch when I clicked to download 
it.   What does Fossil do?
Kaj
5-Mar-2013
[5802x2]
If you already had REBOL installed, you can always click on .r files 
and they will be started with REBOL
Nothing to do with Fossil. The script calls it to check out the repositories
Paul
5-Mar-2013
[5804]
yeah but when I download it usually prompts to save it first as I 
don't have .r registered with the shell.  I must have done something 
recently that re-associated it.  Oh I installed ALTME.  That was 
it.
Kaj
5-Mar-2013
[5805x2]
If you run the script again, it will use Fossil to update everything 
to the latest versions
Oh, it launched straight from your browser? Then you wouldn't know 
in what folder, I suppose
Paul
5-Mar-2013
[5807x4]
Ok, I'll do that in a few.
Already figured that out.
I'll take a look at what I got so far and figure somethings out and 
setup my testing environment.
be back later.
Kaj
5-Mar-2013
[5811x3]
Great
If you want to play with Red, the easiest is MSDOS\Red\console-pro.exe. 
That's the interpreter
GTK-browser should also be interesting
BrianH
6-Mar-2013
[5814]
Kaj in !RebolBot: "I think that only works in Red, refinements starting 
with a number :-)"


Refinements that start with a number work in R2 and R3 as well. Path 
elements aren't refinements though, they're regular words or other 
values. If you find any basic data syntax differences between Red 
and R3 in datatypes that they have in common, report them: they're 
either a bug in R3 or in Red, or possibly in both.
Kaj
6-Mar-2013
[5815x2]
I meant path elements. Of course, when they're used in a function 
call, refinements are written as paths
I didn't test it, but not all differences between Red and R3 are 
bugs
Paul
6-Mar-2013
[5817]
Did a quick profile of play-sdl-wav.exe sample.wav into dependancy 
walker and ran it and can hear the sample play.  It doesnt' play 
however when invoked directly from the command line.
Kaj
6-Mar-2013
[5818x2]
Interesting. So it plays unmodified from a profiler?
A timing issue would explain how it could be a soft bug, that actually 
works in the WINE Windows implementation
DocKimbel
6-Mar-2013
[5820]
I confirm Paul's findings, if I drag'n drop %sample.wav on %play-sdl-wav.exe, 
I can hear the music on Win7.
Kaj
6-Mar-2013
[5821]
Nice, we're making progress. So still not direct from the command 
line?
DocKimbel
6-Mar-2013
[5822]
No sound output, but the wav seems to be played til the end.
Endo
6-Mar-2013
[5823]
I made a Windows application to easily compile .red / .reds files.

You can download it from http://www.moldibi.com/download/RedCompiler.zip
See the help file.
Kaj
6-Mar-2013
[5824]
Yes, even though drag and drop should be the same as starting with 
a command line parameter
Endo
6-Mar-2013
[5825]
It is not a standalone compiler, just a wrapper, so it needs to be 
in the master folder to run. But it makes a bit easier testing red/reds 
scripts.
Kaj
6-Mar-2013
[5826]
Nice
BrianH
6-Mar-2013
[5827]
I didn't test it, but not all differences between Red and R3 are 
bugs

 - where they are in comparable datatypes, they are. Syntax compatibility 
 in the the compatible datatypes is a necessary feature. If they aren't 
 compatible, it's a bug. The only question is whether it's a Red bug 
 or a R3 bug. It could be either.
Kaj
6-Mar-2013
[5828]
Well. if they're not syntax compatible, they're not compatible datatypes 
:-)
BrianH
6-Mar-2013
[5829x3]
If they have the same name and server the same role, they are.
For non-comparable datatypes it's not a bug, of course. And semantic 
differences may not be bugs either.
For instance, if Red doesn't have a money! type then not supporting 
the syntax of a money! type is not a bug.
Kaj
6-Mar-2013
[5832]
Nope. 10h is a Red syntax for an integer! but REBOL considers it 
invalid
BrianH
6-Mar-2013
[5833x2]
Maybe that's a bug in Rebol.
Maybe they're both wrong.
Kaj
6-Mar-2013
[5835]
If you stretch the definition to conform to your argument, then yes, 
you can make anything fit
BrianH
6-Mar-2013
[5836x2]
But syntax incompatibility for the same datatypes is a bug. The only 
question is which language needs to change to make it compatible. 
I am not going to constrain Red to match what R3 can do now when 
R3 can change too. They are related languages. Arbitrary incompatibilities 
that aren't related to the differences in semantic models are bugs. 
Of course this is all keeping in mind that LOAD is just a function, 
but that doesn't make arbitrary incompatibilities a good idea. They 
are in the same syntax family. If it's a good idea to do for Red, 
it's a good idea to do for R3 as well. And if it's not a good idea 
to do for R3, then it is likely also not a good idea to do for Red 
for the same reasons. And maybe there is a better idea for both.
Semantic incompatibility is another issue. Those are more likely 
to be OK.
Kaj
6-Mar-2013
[5838]
Hex notation is not arbitrary
BrianH
6-Mar-2013
[5839x2]
So the bug is in R3.
It is likely that there will be whole datatypes that are appropriate 
in one and not the other, but I expect many of those to eventually 
cross-propagate in a lot of cases because their system models aren't 
really that different, just their implementation models. Certainly 
I would expect datatypes with literal non-constriction syntax to 
cross-propagate eventually, and those are the only ones where syntax 
compatibility would be something we would even consider to be an 
important factor.
Kaj
6-Mar-2013
[5841]
If you define anything Red does that R3 can't do as a bug, that's 
fine with me :-)
BrianH
6-Mar-2013
[5842]
The main principle of the Rebol family way is data syntax compatibility. 
Everything above the data syntax is just a dialect. Even construction 
syntax is a dialect.
Kaj
6-Mar-2013
[5843]
Tell that to Boron and World
BrianH
6-Mar-2013
[5844]
Incompatibility is the whole point to Boron and World, and that is 
why they will eventually fail. I want to make Red and Rebol succeed. 
They have the best chance to succeed by cooperating. No merger necessary, 
just cooperation.
Kaj
6-Mar-2013
[5845]
I don't think that can be said of World
BrianH
6-Mar-2013
[5846x2]
If you define anything Red does that R3 can't do as a bug, that's 
fine with me :-)

 - only when the reason that Red does it is sound. I've noticed that 
 sometimes it isn't (don't worry, it's rare). On those occasions, 
 I'll report Red bugs :)
I think that it can, but the reasons for that are not relevant here. 
If you like I'll discuss them with you privately.
Kaj
6-Mar-2013
[5848]
No need, I'd like to get on with my work