When I started to wrote some lines in python I was not all happy about the libs and how namespace are managed and by the not so OO design of most of the built-in libs. But now that I’ve written some more lines I think it’s all right. Even more, I think that python is by far the most productive language I’ve learn. Let me sum this up like this:
Making indentation matter solves more then the ‘style’ problem. The code flow comes really close to the thinking flow. For example, when I write a function in C or java, until I’ve written the final } I can’t even start to think, my brain is frozen. I know what you’re saying! Wear a hat while coding! Yeah, but I’m not a hat type of guy. So when I code I like it to flow as fast as my thoughts and not make me think of what I want to do at the end when I’ve not even started to think what I was trying to do. Idendation makes the code looks right in my brain, this should be a closer step to implementing a compiler right into my brain.
Even if I’ve not all hyped about namespace management, typically the fact the you have to write
shutil.copy(...) and not
copy(...) bugs me a bit. But in a way, this make the code more readable, cause when looking at a line you know exactly what libs is taking care of what and when. But the thing I like is how imports are handled in you scripts. You can be in the 10th directory level and still write
from base import MyClass and all that without defining references of annoying stuff like that.
But the main drawback is speed. Python is slow, really. So maybe Boo could be a cool alternative, plus that it can use all .NET libs, aye!