4 ms·
I admit upfront that I'm a static type snob, but I have to disagree here. I've not had much experience with Pythong, but I've had plenty of experience with Perl
by matunos 17y ago
I admit upfront that I'm a static type snob, but I have to disagree here. I've not had much experience with Pythong, but I've had plenty of experience with Perl at the enterprise software level (not just talking shell scripts here) and in my experience, a few of your statements don't hold up.
You definitely compile Java code well before you run it, at least in your full enterprise environment. And if you're using an IDE, you'll probably see any type errors well before you even compile it.
Sure, you might put your code through a workout with unit tests (and you should!), but any programmer knows that unit tests do not guarantee that you are using the right types in production, and they definitely do not ensure that clients of your code will be using the right types from your code.
I can't count the number of times I've had to use Data::Dumper just to figure out what type of object I'm dealing with. And don't even get me started with trying to figure out the right types of arguments to pass!
You are correct that the hardest bugs will be left for run-time, but why add to the hassle?