Hacker News new | past | comments | ask | show | jobs | submit login

> most modern dynamically-typed languages err way to far on the side of permitting (or ignoring) operations which should raise exceptions.

Dart is a good example of a modern, dynamically typed language that was designed to not just silently allow errors like these. Accessing an unknown property will throw. Likewise, calling an undefined method will throw, as will calling a method with too many or two few arguments.




In checked mode, yes, but what about when not running in checked mode?


Even in unchecked mode, these will throw exceptions. The difference between unchecked and checked mode has to do with how static type annotations are processed. How unknown methods are handled is purely a facet of the dynamic dispatch semantics.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: