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

[ 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, you can represent pattern-matching against unfree data types intuitively, especially for collection data, such as lists, multisets, sets. We can find Egison programs in lib and sample directories. This package also include Emacs Lisp file egison-mode.el in elisp directory.

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

The pattern-matching of Egison is very powerful. We can use it for pattern-matching against graphs, too. Egison is not popular at all now. Please help us to make Egison popular.