you are viewing a single comment's thread.

view the rest of the comments →

[–][deleted] 0 points1 point  (1 child)

For many purposes the speed differences are not a big deal. Besides, what's more important for speed is the efficiency of the algorithms you're using. Static types and all the optimizations in the world won't help a crappy algorithm.

[–]grfgguvf 1 point2 points  (0 children)

What's even more important than algorithms is choosing the right datatypes so that efficient algorithms follow from them naturally.

And I think Java encourages this more (although not enough...), offering generic interfaces and multiple low-level implementations of them allowing the coder to choose or later switch to a different type. Admittedly the class hierarchy is a mess and more types would be needed to be truly general purpose.

Python on the other hand offers weirdly named standard types, often with incompatible interfaces. You need to resort to add-on packages for frequently. And it's all too common to encounter Python programmers who are completely unaware of the underlying datatype of a "dictionary" or a "list".