“Well-typed programs don’t go wrong.” Robin Milner
In C it is regrettably common for a loose pointer, unchecked array bound, memory allocation bug or similar problem to corrupt memory, often leading to a crash much later in execution, when the delay has made it difficult, unpleasant and expensive to work back to the root cause.
Typesafe languages eliminate these problems by design. Instead of just exhorting programmers to be more careful, typesafe languages put mechanisms in place which guarantee that they cannot happen.
Since these class of faults are often used by intruders to compromise software systems, provably eliminating these classes of faults by design can also make a major contribution toward coping sanely with today’s hostile internet environment — if you take advantage of it!
Programming in Mythryl means never seeing a
.core dump —
never having a customer see a
.core dump! — never having
a pointer bug, never having a stackframe clobbered, never having
a malloc() bug.