Hi Eric,
Empty? isn't a synonym for tail?, as far as I know. Your example is a weird
construction, because if I try to test empty? with tail I do this:
>> test: [1 2 3]
== [1 2 3]
>> tail test
== []
>> empty? test
== false
Why do you do:
> >> test-block: tail [1 2 3 4 5]
It strikes me strange to define 'test-block with the index at the tail. It
influences 'test-block from the get-go:
>> test-block: tail [1 2 3 4 5]
== []
>> index? test-block
== 6
>> head test-block
== [1 2 3 4 5]
>> index? test-block
== 6
While:
>> test: [1 2 3]
== [1 2 3]
>> index? test
== 1
>> tail test
== []
>> index? test
== 1
The index is set to 6 no matter what, and I don't think that's "healthy" for
a block. =)
Regards,
Rachid