> Boolean is a subclass of Integer, because... why?
truth/falsity is more general than that in python, so bools aren't really necessary.
As for why, 0 is false, nonzero is true (not 1, any non-zero). So false is 'nothing there' and true is 'something is there'. This generalises to other structures, an empty list is nothing (ie. false) a non-empty list is not-nothing so is true so you can do
>>> y = [23, 24, 25]
>>> while y:
... print(y)
... y = y[1:]
...
[23, 24, 25]
[24, 25]
[25]
Ditto loadsa other things.I guess this was a lisp inheritance.