Null booleans?

Hello,So I was surprised by these results:q)null ( x:0 1 2) lj ([x:3 4 5] y:til 3;z:010b)x y z-----0 1 00 1 00 1 0q)“b”$0n1bAfter checking the reference docs, I see that the boolean datatype hasno null value. Was this design decision made because of technicalconstraints? When I perform an operation like a join where I expect toget nulls, should I always expect 0b? If so, why does 0n convert to 1b?Thanks,Leon

Was this design decision made because of technical constraints?
yes

When I perform an operation like a join where I expect to get nulls, should I always expect 0b?

yes, 0b is the fill/prototype value

If so, why does 0n convert to 1b?

Any value other than 0 will cast to 1b