Elm (programming language): Difference between revisions

Content deleted Content added
Features: I did not found if Elm is eager or lazy, but an experiment with streams showed that it is an eager language.
Features: fixed mistake, eager languages do call by value not call by name
Line 25:
 
== Features ==
Elm has a small set of language constructs, including traditional if-expressions, let-expressions for local state, and case-expressions for [[pattern matching]].<ref name="syntax">{{cite web|url=http://elm-lang.org/learn/Syntax.elm|title=syntax|website=elm-lang.org|access-date=2013-05-31|archive-url=https://web.archive.org/web/20160313052210/http://elm-lang.org/learn/syntax.elm|archive-date=2016-03-13|url-status=dead}}</ref> As a functional language, it supports [[anonymous function]]s, functions as argumensts, and functions can return functions, the later often by partial application of curried functions. Functions are called by namevalue. Its semantics include immutable values, [[pure function|stateless functions]], and static typing with type inference. Elm programs render HTML through a virtual DOM, and may interoperate with other code by using "JavaScript as a service".
 
=== Immutability ===