: iota ( n -- iota ) \ iota boa ; inline
M: iota length n>> ; inline
-M: iota nth-unsafe drop ; inline
+M: iota nth-unsafe drop integer>fixnum ; inline
INSTANCE: iota immutable-sequence
<PRIVATE
: sequence-hashcode-step ( oldhash newpart -- newhash )
- >fixnum swap [
+ integer>fixnum swap [
[ -2 fixnum-shift-fast ] [ 5 fixnum-shift-fast ] bi
fixnum+fast fixnum+fast
] keep fixnum-bitxor ; inline
#! We can't use case here since combinators depends on
#! sequences
pick length dup 0 3 between? [
- >fixnum {
+ integer>fixnum {
[ drop nip ]
[ 2drop first ]
[ [ drop first2 ] dip call ]