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