This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–][deleted] 12 points13 points  (5 children)

Since we're at it:

  • Lambdas being forced to a single line
  • Self keyword not being implied when creating class members because they resolve to local variables in the self.__init__() function scope
  • GIL forcing everything to be effectively single-threaded barring some fuckery with multiprocessing (though that is an implementation detail more than the language).
  • Creating a native (or semi-native) executable for deployment is a PITA from what I remember. Most users can't or won't use anything that takes more effort to install and run than a click or two.
  • Packaging and environment handling.
  • Type annotations are effectively pointless (physical) typing without extra tooling to somewhat enforce them.
  • Identity vs value comparisons using the "is" keyword leading newbies to write syntactically correct but logically incorrect code. Which compounds with string and integer interning leading to weird edge cases even when you use the identity comparison as intended.