ランタイムエラーが実際に起きないことです。コンパイラが非常に素早くソースコードを分析して、値がプログラム中でどのように使われているか解析できるためです。値を間違った方法で使用すると、コンパイラがフレンドリーなエラーメッセージで警告してくれます。コンパイラは、全ての関数の引数と返り値の型を解析します。JavaScriptの代わりにElmを使うメリットの一つは、コンパイラーの型推論の機能が使えることですね!HaskellなどのML系言語に慣れている人にとっては、型推論の恩恵が得られることは便利なのではないかと思います。