One of the best features of pure functional programming languages like Elm is their ability to handle and deal with uncertainty. The absence of null and exceptions forces developers to state explicitely what should happen when expectations aren’t met, which combined with a good compiler and a strong static type system makes the code super descriptive and rock solid.