Recs.
Updated
Elm is a compile-to-Javascript language aimed at building games and other interactive applications. It falls under the Functional Reactive Programming paradigm, and allows users to build complex applications with very little code. As the code is functional, it tends to be more terse, testable, and reusable to a more granular level than code using other frameworks.
SpecsUpdate
Pros
Pro Good way to get introduced to Functional Reactive Programming
You may have already seen reactive programming in other languages, but functional reactive programming requires a purely function programming language like Elm. If you're doing any work on Graphical User Interfaces, you'll be interested in the patterns you can find in a language like Elm, which has built-in support for FRP.
Cons
Con Not built for game development
Elm is primarily a frontend language. Built to act as an alternative to JavaScript for the frontend. It was later that it started getting use as a general-purpose language.
Because of this, it may be hard to develop games that do not target the browser.