Elm's type system rules out the possibility of null or undefined. So you won't be seeing those errors at runtime (modulo some bug in Elm itself). It encourages you to program with a very clean separation between model, view, and update. And it has very helpful compiler error messages that guide you to correct code.
(I'm also a fan of MEAP's, so buying this just because.)