In 1995, Netscape Communications hired Brendan Eich to add a new language to Netscape Navigator, the most popular web browser of the day. Netscape wanted to augment the programmability of the web.
It’s worth mentioning that TypeScript is more popular than its Google competitor. The Angular framework is developed with TypeScript, even though it’s a Google project. TypeScript can be used with React and Vue too.
Elm is, essentially, a domain-specific language for building web front-ends.
The below example of Elm code comes from the language’s introduction, which is part of Elm’s excellent documentation.
update msg model = case msg of Increment -> model + 1 Decrement -> model - 1 view model = div  [ button [ onClick Decrement ] [ text "-" ] , div  [ text (String.fromInt model) ] , button [ onClick Increment ] [ text "+" ] ]
(println "Hello world!")
But that may be about to change as WebAssembly is more widely adopted. All major browsers support WebAssembly, and, in the future, it is likely to become the default compilation target for web-focused languages. That is a topic for a different article, but it would be a good idea for web developers to begin to explore the possibilities of WebAssembly.