Hi Lindsay,

> (de odd? (X) (bit? 1 X) )
> ...
> : (odd? 1)  -> 1
> : (odd? 2)  -> NIL
> ...
> : (fish odd? (1 2 3))
> !? (bit? 1 X)
> (1 2 3) -- Number expected

This happens because 'fish' applies the function to *all* elements of its second
argument, not just the atomic ones.


> (de odd? (X) (and (num? X) (bit? 1 X)) )
> -> odd?
> 
> Now it works with fish...
> 
> : (fish odd? (1 2 3))
> -> (1 3)

Right. As you now check for 'num?', 'bit?' is not called with a list argument
which it can't handle.

♪♫ Alex
-- 
UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe

Reply via email to