`except BaseException` does not catch everything in Python 2, since you can throw any old-style class. Use `except` instead.
miniblog.
Related Posts
TIL Rust has an ambiguity `if Foo {}` -- is `Foo` a value of type bool, or a struct?
Rust solves this by defining a grammar production 'any expression except struct literals' and using it in this position.
I've been learning about the fascinating hobby of amateur radio: https://youtu.be/ysOq6ywTSzU
It reminds me of chat roulette, except all the users have a license and many of them build their own equipment!
I've realised that I have a much better understanding of the semantics of languages that are value oriented. You avoid murky questions like this:
try:
raise Exception('')
except:
return 1
finally:
return 2
There's no 'right' answer here when choosing how a PL should work.