Ela is
a simple, yet powerful modern functional language with a state-of-art syntax. Ela combines strict and lazy evaluation, dynamic typing and features, which are normally adopted by statically typed languages, such as algebraic data types and Haskell style type classes.
Ela can
be used to study and teach functional programming, for prototyping, for writing theorem provers, for scripting, as well as for development of applications in a pure functional way. Ela comes with a rich standard library, interactive console and a graphical development environment. Ela also offers a flexible and powerful interface to .NET programming languages, such as C#.
A taste of Ela
concat [] = [] //Recursive function
concat (x::xs) = x ++ concat xs

concat = foldr (++) [] //The same, through foldr

//The same function defined using lambda
concat = \xs -> if isnil xs then [] 
    else head xs ++ concat (tail xs)
Ela is distributed as a part of Ela Platform, that includes an integrated graphical development environment Elide that will help you to quickly get started with Ela. Elide features a powerful Ela code editor with code folding, autocomplete and support for "highlight errors as you type" feature. Elide also includes Outline view for Ela source code files, task management, debugging capabilities, Ela object file editor and many other productivity tools.
Download Elide with Ela Platform
Download a book
about Ela language
Ela Platform 2016.3 is out
Ela Platform 2016.3 is an iterative release that focuses on Ela standard library. It also comes with updated versions of Ela and Elide and expands Ela documentation.
Posted 21/03/2016
Ela Platform 2016.2 is out
Ela Platform 2016.2 is a stabilization release. It comes with a new version of Ela compiler that addresses several important issues and refactorings.
Posted 16/03/2016
Ela Platform 2016.1 is out
Ela Platform 2016.1 contains multiple changes to the standard library. Also an experimental feature in Ela compiler that allows to infer contexts from function arguments is now supposed to be stable.
Posted 11/03/2016
Ela Platform 2015.3 is out
Ela Platform 2015.3 is focused on additions and enhancements to the standard library. Starting from this version an arbitrary precision integer type is introduced (integer module), polymorphic numeric literals, new modules math, symbolic, stack, state and important additions to other modules. Also Ela now goes from .NET 2.0 to .NET 4.0 (and Mono 2.8 respectively). Besides this Ela Platform 2015.3 includes several other enhancements to Ela standard library and a new version of Ela with several important bug fixes.
Posted 16/06/2015
Contact language developers  Copyright 2016