AltME: REBOL3

Messages

PeterWood
How do you run a Rebol 3 script from the DOS command line?
I tried with this simple script:
    Rebol []
    print 1
The Rebol console flashes in the background and the DOS console shows only a blank line.
C:\Users\peter\Desktop>AtronixR3 test.r
C:\Users\peter\Desktop>
sqlab
Works under Linux
anton@sixpack ~/own/R3 $ ./r3 ../test/test.r
1
PeterWood
I think it's more general Windows/Rebol problem -- it' seems the same for Rebol 2.
Sunanda
The script is running: it prints 1 in the Rebol console, and then closes the Rebol console.
You need to put a HALT at the end of your script if you want the Rebol console to stay open at end of execution.....As far as I know, there is no other easy way of guaranteeing that.
PeterWood
Thanks Sunanda

Pekr
There is special release to have a true console. What R3 provided by default just looks like a DOS console, maybe even is, but that's not what you usually want. It was IIRC Earl, who provided true DOS console for R3. Obviously, no GUI available ....

Ladislav
Hi all! I wrote a https://github.com/rebol/rebol-issues/issues/2259 ticket explaining why EQUAL? should be transitive. I always thought that EQUAL? should be transitive, but these arguments may convince people who did not know them until now. Anybody wanting to discuss it?
The essence is as follows: ordering has to be transitive, otherwise you cannot obtain reasonable sorting results. Moreover, EQUAL? has to be a conjunction of two orderings: LESSER-OR-EQUAL? and GREATER-OR-EQUAL?, which, since both must be transitive, yields that EQUAL? must be transitive too.
Gregg
Your examples are clear and compelling Ladislav. Not sure how I'd argue with them, so I won't. :-)

Ladislav
So, do you think that the reasons to make EQUAL? transitive are compelling?
Gregg
Yes.
Robert
+1

Endo
+1
PeterWood
The arguments for making Equal? transitive are compelling Ladislav. Would there be any noticeable change from the current Equal? behaviour if it was implemented?
Perhaps it would be better to ask, what (if any) change would there be in the behaviour in Equal? if a transitive version was implemented?
Ladislav
Yes, that is a perfect question.
DideC
I see the point is about decimals, but other bugs relate to word! comparison.
Does this 2 points must be threaded separatly or not ?
Ladislav
To answer Peter's question: Currently, EQUAL? is not only nontransitive for decimals, it is also "approximate" in that different numbers (differing by 10 ULP or less) are considered equal. For example, 0.1 + 0.1 + 0.1 (to binary! 0.1 + 0.1 + 0.1; == #{3FD3333333333334}) differs from 0.3 (to binary! 0.3 ; == #{3FD3333333333333}) by exactly 1 ULP (unit in in the last place), as can be seen from the binary representation.
EQUAL? 0.1 + 0.1 + 0.1 0.3 yields TRUE
Ladislav
..., while the number representing 0.1 + 0.1 + 0.1 is exactly by 1 ULP greater than the number representing 0.3, and greater-or-equal? 0.1 + 0.1 + 0.1 yields TRUE, while lesser-or-equal? 0.1 + 0.1 + 0.1 0.3 yields FALSE

Last message posted 161 weeks ago.