This is why unit testing took over the dynamic language world more than a decade ago.
And at least in Perl, which have a bit of extensible syntax, you can declare parameter types of methods/functions. That is especially a good idea for external APIs to libraries, etc.
All tools have quirks, which forces a bit of change in how you use them. You have to look at the total sum of these effects. How much extra days will it take to learn? How much will the work arounds cost you? Etc.
Granted, e.g. JavaScript have more weirdness than should be possible -- but is is fast, fun and has lots of use cases.
And at least in Perl, which have a bit of extensible syntax, you can declare parameter types of methods/functions. That is especially a good idea for external APIs to libraries, etc.
All tools have quirks, which forces a bit of change in how you use them. You have to look at the total sum of these effects. How much extra days will it take to learn? How much will the work arounds cost you? Etc.
Granted, e.g. JavaScript have more weirdness than should be possible -- but is is fast, fun and has lots of use cases.