Re-implement reverse to fix obscure problem

db4
Slava Pestov 2008-08-18 16:40:50 -05:00
parent a452dd86f6
commit 8b55b53269
2 changed files with 10 additions and 1 deletions

View File

@ -697,3 +697,7 @@ DEFER: error-y
<string-reader> "forget-subclass-test" parse-stream
drop
] unit-test
[ ] [
"IN: sequences TUPLE: reversed { seq read-only } ;" eval
] unit-test

View File

@ -173,7 +173,12 @@ M: reversed length seq>> length ;
INSTANCE: reversed virtual-sequence
: reverse ( seq -- newseq ) [ <reversed> ] [ like ] bi ;
: reverse ( seq -- newseq )
[
dup [ length ] keep new-sequence
[ 0 swap copy ] keep
[ reverse-here ] keep
] keep like ;
! A slice of another sequence.
TUPLE: slice