4 ms·
> typecasing, multimethods These features exist for expressiveness, not safety reasons. Although it must be noted that these features make it hard to verify th
by catnaroek 9y ago
> typecasing, multimethods
These features exist for expressiveness, not safety reasons. Although it must be noted that these features make it hard to verify the correctness of programs in a modular fashion. Typecasing makes language-enforced abstraction essentially impossible.
> conditions and restarts
These features exist for debuggability, not safety reasons. Safety means ruling out delimited classes of “bad” behaviors by (language) design.
> friendly runtime overseeing the code execution
Now this is a safety feature, but it is only kind of incompatible with the zero-overhead needs of a low-level language.