I understand where you're coming from. I'm working on a mini-ML in Python as a learning exercise for myself and possibly as a tutorial for others; will open source it soon.
As such, I've come across a few good resources:
check out Robert Small's Hindley-Milner in Python[0], as well as alehander42's Hermetic language in Python[1].
I also just found out about Hask, an implementation of many Haskell language features in Python. Looking at the source code, it's well-commented and clear, so I suspect I'll learn a lot from it as well [2].
Finally, even though it's not in a dynamic or non-functional language like you request, I highly recommend Andrej Bauer's Programming Language Zoo[3], which contains very simple and easy-to-understand implementations of various type systems in OCaml. Very elucidating.
0. http://smallshire.org.uk/sufficientlysmall/2010/04/11/a-hind...
1. https://github.com/alehander42/hermetic
2. https://github.com/billpmurphy/hask
Edit: Oh, and one more resource that's been extremely helpful has been "Introduction to Functional Programming through Lambda Calculus" by Michaelson. Well worth the cost of the book.