The Egison Programming Language

- Express Intuition Directly with Essentially New Syntax -

Egison is a programming language that realizes non-linear pattern-matching against unfree data types.
We can directly represent pattern-matching against a wide range of data types such as lists, multisets, sets, trees and graphs.
Egison makes programming dramatically simple!

Pattern-Matching-Oriented

Egison proposes a new paradigm pattern-matching-oriented. The combination of all of the following features enables intuitive powerful pattern-matching.

  • Modularization of the way of pattern-matching
  • Pattern-matching with backtracking
  • Non-linear patterns with lexical scoping

Concept of Egison (5 min)

Online Demonstrations

Pattern-matching against ...

View Demonstrations »

We are refining Egison paper to propagate the theory of Egison all over the world! Please check the latest copy of the paper on arXiv.org.

Aims

We aim at intuitive representation of algorithms and formalization of human recognitions.
We believe this is the shortest way to the artificial intelligence.

Open-Source

Developed and maintained on GitHub by the community. License is MIT.

Haskell

Egison is written in Haskell and being distributed as a Hackage package.
Egison inherits a lot of things from Haskell.

Related Projects

Extending other languages to access Egison pattern-matching!


Community

We have a mailing list!
Egison on Twitter, Google+, Facebook, GitHub, Rosseta Code, Hacker News, and Reddit. Please check them!


comments powered by Disqus
This website in other langauge: English, 日本語