(please note that I personally strongly prefer static types, but I still found this an interesting read).