Permitting arbitrary annotations is a rather nice feature that, besides static analysis, opens the door for expressive runtime pre/postcondition checking functionality like the Clojure spec library[1]. Does Python have something similar?
[1]: https://www.python.org/dev/peps/pep-0563/#non-typing-usage-o...