I like Python because it has a growing base of code to support mathematics and statistics. Integrating code from C, C++ and Fortran into Python is also fairly easy, so if the math code you want is not available in Python, perhaps you can “steal it” from the R libraries.
Like Grails, which I used to build nderground, Django is an excellent Model-View-Controller framework for building web applications in Python.
What I don’t like about Python is dynamic typing. Groovy, which is the core language for the Grails framework, has dynamic typing. I am really tired of finding out at runtime that I called a function that doesn’t exist or that the arguments wrong. The point of static typing is to have the compiler help you. The allure of dynamic typing escapes me.
And finally, a minor complaint. I have a background in compiler development and language implementation. I will never stop feeling that making whitespace significant, as Python does, is just wrong. Language design heresy.
http://www.nderground.net — nderground is a social network built for privacy.