[EDIT: This discussion was originally on this thread]
first let me just say this, python uses implicit variable declaration (ie you dont have to declare a variable before it is used, you just use it).
to me, this is the single worst most harmful idea in the history of programming languages, and it completely baffles me that it can be found in a modern and popular language. that single issue is reason enough that no one should be using this language.
this is actually a little related to why the issue of significant indentation is such a bad idea -- because it makes it so easy to introduce bugs that are nearly invisible to the naked eye (using a tab instead of a space, mispelling a variable name, etc.)
the syntax is a personal thing, but just feels wrong to me.. having to declare object functions with "self" as the first parameter (even though when you invoke it you dont pass that. this optional class documentation string stuff, by just specifying a string after the def line.. it just feels kludgey and dirty.
first let me just say this, python uses implicit variable declaration (ie you dont have to declare a variable before it is used, you just use it).
to me, this is the single worst most harmful idea in the history of programming languages, and it completely baffles me that it can be found in a modern and popular language. that single issue is reason enough that no one should be using this language.
this is actually a little related to why the issue of significant indentation is such a bad idea -- because it makes it so easy to introduce bugs that are nearly invisible to the naked eye (using a tab instead of a space, mispelling a variable name, etc.)
the syntax is a personal thing, but just feels wrong to me.. having to declare object functions with "self" as the first parameter (even though when you invoke it you dont pass that. this optional class documentation string stuff, by just specifying a string after the def line.. it just feels kludgey and dirty.













- you can do dynamic typing even if you have to predeclare variables (just declare them as "var" rather than a specific type). Even though I generally prefer static typing (catching bugs at compile-time =
), I do accept that dynamic typing can be useful (especially while prototyping stuff - nice not having to bother with endless type conversions)... but not requiring variables to be predefined is a big mistake, IMHO.
- carpe noctem





well, remember 3 things:

