The Egison Programming Language

- Express Intuition Directly with Essentially New Syntax -

Egison is a programming language that realizes non-linear pattern-matching against non-free 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!


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

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

Concept of Egison (5 min)

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


Mac OS X Linux Windows

Egison Cheat Sheet

Please refer this cheat sheet when you write Egison programs.


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


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


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!


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, 日本語