REBOL/Core 2.5.3 Released
[1/16] from: carl::s::rebol::com at: 2-Aug-2002 21:08
A new REBOL/Core has been released for testing purposes.
Check out the list of changes and find out where to get
it at:
http://www.reboltech.com/downloads/changes.html
Some of the changes include:
MAKE-DIR Rewritten
New Bitset Functions: CLEAR, LENGTH?, EMPTY?
Changes to SKIP Function
ARRAYs Initialized with Block Values
Added PARSE BREAK Word
Fix to OPEN on Network Ports
Fixed Crash on Modified Functions
Unset Object Variables (on Exit)
Added BUILD-MARKUP Function
Revised BUILD-TAG Function
Revised DECODE-CGI Function
and more...
Some of the changes to functions like BUILD-TAG might be
worth discussing... because the old function was pretty bad,
and the new one is not that compatible with it (if anyone
was in fact using the old one.)
Let me know what you think. There's more to do, but we didn't
want to hold up some of the nicer changes to wait for everything.
Newer versions of /View, /Command, /Encap, /Link, and /Serve
will be made available soon.
-Carl
REBOL Guy
[2/16] from: al:bri:xtra at: 3-Aug-2002 19:57
Carl, THE Rebol guy, wrote:
> Some of the changes to functions like BUILD-TAG might be worth
discussing... because the old function was pretty bad, and the new one is
not that compatible with it (if anyone was in fact using the old one.)
>From the changes.html page:
The previous version of BUILD-TAG generated poor results for most input
combinations. It has been replaced by a new function that was contributed by
????.
I think that "????" was me! :)
I recognise the examples:
Input: [/html gibber %Froth.txt]
Old: {</html gibber="Froth.txt">}
New: "</html>"
and build-tag matches my current version.
Thanks!
Andrew Martin
Waving flags for the rebolution!
ICQ: 26227169 http://valley.150m.com/
[3/16] from: robert:muench:robertmuench at: 3-Aug-2002 10:42
> -----Original Message-----
> From: [rebol-bounce--rebol--com] [mailto:[rebol-bounce--rebol--com]]
> On Behalf Of Carl at REBOL
> Sent: Saturday, August 03, 2002 6:08 AM
> To: [rebol-list--rebol--com]
> Subject: [REBOL] REBOL/Core 2.5.3 Released
Hi, this one from the changes.html fails:
ebol[]
item: "this is a word with abc at the end."
parse item [
any [
"word" (print "got word")
| copy value [to "abc" | to end]
(print value) break
]
]
** Script Error: Invalid argument: ?native?
** Where: do-boot
** Near: parse item [
any [
"word" (print "got word")
| copy value [to "abc" | to end]
(print value) break
]
]
Robert
[4/16] from: brett:codeconscious at: 3-Aug-2002 18:56
Hi Robert,
The parse break example runs for me.
However
type? AND #{00} #{00}
is a problem. :^(
I also feel that BUILD-MARKUP should be able to accept a block as input. It
feels limiting that code inside <%...%> will only be bound to the global
context.
Brett.
[5/16] from: g:santilli:tiscalinet:it at: 3-Aug-2002 11:33
Hi Brett,
On Saturday, August 3, 2002, 10:56:58 AM, you wrote:
BH> type? AND #{00} #{00}
BH> is a problem. :^(
I always thought that infix operators were a hack in REBOL... It
works fine with AND~, so use that if you like prefix. It seems
like there's a nasty bug in the evaluation of infix operators when
used with prefix notation. (Already sent to feedback Brett?)
Regards,
Gabriele.
--
Gabriele Santilli <[g--santilli--tiscalinet--it]> -- REBOL Programmer
Amigan -- AGI L'Aquila -- REB: http://web.tiscali.it/rebol/index.r
[6/16] from: brett:codeconscious at: 3-Aug-2002 19:51
> BH> type? AND #{00} #{00}
>
> BH> is a problem. :^(
>
> I always thought that infix operators were a hack in REBOL... It
> works fine with AND~, so use that if you like prefix. It seems
> like there's a nasty bug in the evaluation of infix operators when
> used with prefix notation. (Already sent to feedback Brett?)
Didn't know about AND~ I've been always used AND in a
prefix form. It tend to prefer prefix as it seems more in keeping
with the minimal syntax of REBOL, but then also I've been
tainted by <, =, etc. :^)
Thanks Gabriele.
Yep, sent to feedback.
Brett.
[7/16] from: carl:cybercraft at: 3-Aug-2002 22:10
On 03-Aug-02, Carl at REBOL wrote:
> A new REBOL/Core has been released for testing purposes.
> Check out the list of changes and find out where to get
<<quoted lines omitted: 21>>
> Newer versions of /View, /Command, /Encap, /Link, and /Serve
> will be made available soon.
And they seem to be there now. Encap's free for downloading? That's
a first, isn't it? What's its licence say?
--
Carl Read
[8/16] from: robert:muench:robertmuench at: 3-Aug-2002 13:04
> -----Original Message-----
> From: [rebol-bounce--rebol--com] [mailto:[rebol-bounce--rebol--com]]
<<quoted lines omitted: 3>>
> Subject: [REBOL] Re: REBOL/Core 2.5.3 Released
> The parse break example runs for me.
Well, it works for Core of course ;-) But I downloaded View 1.2.7 too
and thought it has the same core engine. And there it breaks for me...
Robert
[9/16] from: tim::johnsons-web::com at: 3-Aug-2002 8:48
Re: REBOL/Core 2.5.3 Released/Build-tag!
* Andrew Martin <[Al--Bri--xtra--co--nz]> [020803 00:11]:
> "The previous version of BUILD-TAG generated poor results for most input
> combinations. It has been replaced by a new function that was contributed by
> ????. "
>
> I think that "????" was me! :)
Well done Martin!
> I recognise the examples:
> Input: [/html gibber %Froth.txt]
> Old: {</html gibber="Froth.txt">}
> New: "</html>"
>
> and build-tag matches my current version.
--
Tim Johnson <[tim--johnsons-web--com]>
http://www.alaska-internet-solutions.com
http://www.johnsons-web.com
[10/16] from: andreas:bolka:gmx at: 4-Aug-2002 16:32
Re: REBOL/Core 2.5.3 Released
Saturday, August 3, 2002, 6:08:19 AM, Carl wrote:
> A new REBOL/Core has been released for testing purposes.
> Check out the list of changes and find out where to get
> it at:
> http://www.reboltech.com/downloads/changes.html
-- snip --
2.15. ALTER added to Core
The ALTER function found only in View is general purpose and has been
made available in all version of REBOL.
-- snap --
'alter in new /core is broken:
>> s: [ 1 2 3 4 5 6 ]
== [1 2 3 4 5 6]
>> alter s 4
== [2 3 4 5 6]
a quick look at the 'source reveals the problem
either temp: find series value [remove series] [append series value]
should read
either temp: find series value [remove temp] [append series value]
[submitted to feedback]
--
Best regards,
Andreas mailto:[andreas--bolka--gmx--net]
[11/16] from: lmecir:mbox:vol:cz at: 4-Aug-2002 23:38
Congratulations, Carl!
I) My benchmarks show, that 2.5.3 is faster than its predecessor for
floating point operations! I appreciate you repaired SAME? which is not
crashing the interpreter AFAICT.
II) It looks that you didn't have time to repair the FOR function.
III) Updates.html contains the text:
Fixed the crash that happened when modifying a function's value while
evaluating its arguments. For example, the code below:
a: func [x][print x]
b: func [][a: 42]
a b
no longer causes a crash. Note that modifying a function while it is
evaluating may produce odd results that may vary between implementation
versions and should generally be avoided.
I tested the behaviour and I am unhappy with what I found:
a: func [x] [2]
a a: 1 ; == 1
My POV is, that the correct result should be 2 in this case, because the
code doesn't modify the function. The only change the code causes is, that
'a no longer refers to the function that should be evaluated.
-L
----- Original Message -----
From: "Carl at REBOL"
...
A new REBOL/Core has been released for testing purposes.
Check out the list of changes and find out where to get
it at:
http://www.reboltech.com/downloads/changes.html
[12/16] from: brian:hawley at: 9-Aug-2002 16:29
At 09:08 PM 8/2/02 -0700, you wrote:
>A new REBOL/Core has been released for testing purposes.
...
>Some of the changes include:
> MAKE-DIR Rewritten
<<quoted lines omitted: 9>>
> Revised DECODE-CGI Function
> and more...
Yay to all, but let me add one I noticed (belatedly):
TO-REBOL-FILE and TO-LOCAL-FILE are finally there
as 2.5.0 said they would be, and they work too!
Well, for the most part. TO-LOCAL-FILE still needs to be
passed a full file specification, but since you can use
CLEAN-PATH to get that I don't have a problem here. That
should be documented in the function spec, though.
TO-REBOL-FILE even doesn't choke on NTFS file streams
except in one case, when the file stream is specified
off of a fully relative file name, like this:
>> to-rebol-file "blah:hiddenstream"
== %/blah/Lang/REBOL/Core/hiddenstream
when it should be
>> to-rebol-file "blah:hiddenstream"
== %blah:hiddenstream
I suspect that the existing behavior might be a carry-
over from the Amiga version of TO-REBOL-FILE, but I
would be the last person to ask that :)
Really, REBOL is going about file stream support wrong.
I would like to see NTFS file streams (or forks) use the
GET-MODES 'forks interface, just like it is on Mac. I
love the forks, type and creator support on Mac - it
would be cool to be able to do similarly arcane stuff
on Windows as well. On the other hand, perhaps streams
are too arcane for REBOL to support directly...
I'll look it up on MSDN and see what I can hack up to
improve stream support for REBOL, then tell Feedback.
And you all, of course.
Brian Hawley
[13/16] from: brian:hawley at: 9-Aug-2002 14:42
At 04:32 PM 8/4/02 +0200, Andreas ([andreas--bolka--gmx--net]) wrote:
>'alter in new /core is broken:
> >> s: [ 1 2 3 4 5 6 ]
<<quoted lines omitted: 6>>
> either temp: find series value [remove temp] [append series value]
>[submitted to feedback]
I think it should be
either temp: find series value [head remove temp] [append series value]
for consistent behavior. I submitted my version to feedback
as well (alas, before I read your message).
By the way, the function is identically broken in /View.
Perhaps it was broken all along, but no one wrote code that
needed it to work correctly before, just for the trivial
case of the item always being in the first position.
Brian
[14/16] from: al:bri:xtra at: 10-Aug-2002 16:01
I think it should be:
either Temp: find Series Value [remove Temp] [append Series Value]
Series
As I believe that 'Alter should return the original Series at it's original
position, not the 'head position given by 'append. So the complete function
reads:
; Replacement 'Alter
Alter: func [
{If a value is not found in a series, append it; otherwise, remove it.}
Series [series! port!]
Value
/local Temp
][
either Temp: find Series Value [remove Temp] [append Series Value]
Series
]
Andrew Martin
ICQ: 26227169 http://valley.150m.com/
[15/16] from: rotenca:telvia:it at: 14-Aug-2002 3:45
Hi Ladislav,
>I appreciate you repaired SAME? which is not
> crashing the interpreter AFAICT.
What do you means?
This always crash on my View 1.2.8.3.1:
insert/only a: [] a
insert/only b: [] b
same? a b
> a: func [x] [2]
> a a: 1 ; == 1
>
> My POV is, that the correct result should be 2 in this case, because the
> code doesn't modify the function. The only change the code causes is, that
> 'a no longer refers to the function that should be evaluated.
It seems that the function is referenced two times through the variable name:
the first to collect the argument number, the second to collect the body code.
---
Ciao
Romano
[16/16] from: lmecir:mbox:vol:cz at: 14-Aug-2002 21:40
Hi Romano,
it looks that my testing wasn't thorough enough. Sorry for misinforming. You
should send it to feedback.
<<Romano>>
...
It seems that the function is referenced two times through the variable
name:
the first to collect the argument number, the second to collect the body
code.
---
Ciao
Romano
<</Romano>>
Yes, you are right! The only problem is, that this isn't the proper way how
to do it (IMO!). The variable should be examined just once to get the
function. Any subsequent usage of the variable for the same purpose is an
unnecessary hazard.
Notes
- Quoted lines have been omitted from some messages.
View the message alone to see the lines that have been omitted