# egison: Programming language with non-linear pattern-matching against unfree data

[ compilers-interpreters, library, mit, program ] [ Propose Tags ]

An interpreter for Egison, the programming langugage that realized non-linear pattern-matching against unfree data types. With Egison, we can directly represent pattern-matching against a wide range of data types such as lists, multisets, sets, trees and graphs. We can find Egison programs in lib and sample directories. This package also include Emacs Lisp file elisp/egison-mode.el.

The following code is the program that determines poker-hands written in Egison. All hands are expressed in a single pattern. Isn't it exciting? We can run this code online at http://www.egison.org/demonstrations/poker-hands.html.

The pattern-matching of Egison is very powerful. Please view and try more demonstrations.

http://www.egison.org/demonstrations/