This happens in Javascript, for example, that division by zero is not handled by the language itself. Is there's a valid reason for this?I see this as a very basic exception that a language should be able to handle (they even handle 0/0 as NaN NaN).or take the square root of a negative number or use arithmetic  operators with non-numeric operands that cannot be converted to  numbers.
Why would a language let programmer to handle divison by zero
javascript
In my experience, these sort of things rarely come about ue to any sort of technical limitation but more due to architectural beliefs / ideas of the language designers.Yes the language could handle division by zero... but maybe they thought it would be 'better' if the language didn't and developers were forced to explicitly define what should happen in such a scenario.In a similar fashion, Objective-C 'handles' attempting to call a non-existant object with no complaint or warning yet a lot of C# developers frown on this as a possible language feature.It's all about where you're standing and what you're trying to achieve.