Hi Elan
I agree. There is definitely a bug. And it is much worse than just getting
an error message.
>> a
== [[1 2] [3 4]]
>> b
== [[1 2 3] [3 4 5]]
>> a: [1 2 3 4]
== [1 2 3 4]
>> b: next a
== [2 3 4]
>> clear a
== []
>> c: make block! form b
== [2 3 4]
>> head c
== [2 3 4]
>> d: make block! b
Gives pop-up window: Fatal System Error
**Crash(Should not happen) - Corrupt datatype 62
Notice that form is able to recover the information in b into a normal block
c. Jim said this is a bug in FORM. It should recognize that the length of b
has changed. This is logged as a bug at REBOL tech. I also submitted the
fatal system error and it was verified by Bo.
Error messages for valid statements are a problem, but certainly the
interpreter should not crash with a sytem error. I believe the bug lies
deeper in the system. FORM is misled because the system itself has lost
track of whats going on.
Comments?
Larry :)
----- Original Message -----
From: <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Sunday, December 12, 1999 6:19 PM
Subject: [REBOL] RFF: empty? for blocks Re:(2)
> Hi Eric,
> >Clearing from the head of the data while you've got other pointers
farther
> >along in the series doesn't make sense, which is no doubt why this bug
has
> >taken so long to be discovered.
>
> Oh well, different things make sense to different people. I think that the
> evaluation of a sequence of legal expressions should not result in an
> error. Isn't that a necessary formal criteria of the language definition?
>
> Elan
>