On Tue, Mar 4, 2014 at 4:59 AM, Zack Breckenridge <zbr...@gmail.com> wrote: > All language issues aside, I think one of the things (that others have > touched on here but I'd like to reiterate) that makes something > suckless is fewer dependencies and less version management. > > Due to Python's "batteries included" philosophy and the large amount > of 3rd party libraries often used, most code over 30-40 lines tends to > bring with it a lot of dependency and version management issues (pip, > python2 vs python3, virtualenv, etc) that one might not have using a > different language. The more you have to install, the more moving > parts your code has, and the more it tends toward suckage over time.
I have been using Python for a few years and never had any version management issues. I assume this was because I use it for simple scripting where mostly the standard library was needed which is actually an argument for the "batteries included" approach. > [...] > Also, part of what I interpret as the "suckless philosophy" is > simplicity in implementation as well as in usage. Python is simple to > *use* (by some standards) but simple at the expense of a lot of hidden > underlying complexity. Compare for example, the implementation of > CPython versus say, Lua. I can't really talk about the implementation itself but the language is very expressive and tends to be easy to read as well. So I would say the language does a good job of making the more complex functionality available for when (if?) you need it while not sacrificing any readability. My biggest gripe with the language is the absence of static type checking at compile time. I would not recommend Python to anyone wanting to write a non-trivial robust program. For simple scripting and (algorithm) prototyping it is fine (but slow, I hear). And there is the whole global interpreter lock mess of course... In my opinion Go(lang) makes Python obsolete in almost all respects. Cheers, Silvan