fix lazy take bug -- invariant being tested on unforced argument
This commit is contained in:
parent
bc5ab1e031
commit
808361b789
|
@ -576,8 +576,8 @@
|
|||
|
||||
(define* (take n l)
|
||||
(let ([n0 (! n)])
|
||||
(unless (exact-nonnegative-integer? n)
|
||||
(raise-type-error 'take "non-negative exact integer" 0 n l))
|
||||
(unless (exact-nonnegative-integer? n0)
|
||||
(raise-type-error 'take "non-negative exact integer" 0 n0 l))
|
||||
(let loop ([n n0] [l l])
|
||||
(if (zero? n)
|
||||
'()
|
||||
|
|
Loading…
Reference in New Issue
Block a user