The egison package

[Tags: library, mit, program]

An interpreter for Egison, a **pattern-matching-oriented**, purely functional programming language. We can directly represent pattern-matching against lists, multisets, sets, trees, graphs and any kind of data types.

We can find Egison programs in lib and sample directories. This package also include Emacs Lisp file elisp/egison-mode.el.

We can do non-linear pattern-matching against unfree data types in Egison. An unfree data type is a data type whose data have no canonical form, a standard way to represent that object. It enables us to write elegant programs.

Twin Primes

We can use pattern-matching for enumeration. The following code enumerates all twin primes from the infinite list of prime numbers with pattern-matching!

Poker Hands

The following code is the program that determines poker-hands written in Egison. All hands are expressed in a single pattern.

Mahjong

We can write a pattern even against mahjong tiles. We modularize patterns to represent complex mahjong hands.

Graphs

We can pattern-match against graphs. We can write program to solve the travelling salesman problem in a single pattern-matching expression.

Aren't thsese exciting? We can run these demonstrations on our website! Please view and try more demonstrations!

http://www.egison.org

Egison makes programming dramatically simple. Please enjoy Egison!


Properties

Versions0.1, 0.1.1, 0.1.2, 0.1.2.1, 0.1.2.2, 0.1.2.3, 0.1.2.4, 0.1.2.5, 0.2.0.0, 0.2.0.1, 0.2.0.2, 0.2.1.0, 0.2.1.1, 0.3.0.0, 0.3.0.1, 0.3.0.2, 0.3.0.3, 0.3.1.0, 0.3.1.1, 0.4.0.0, 1.0, 1.0.1, 1.0.2, 1.0.3, 1.0.4, 1.0.5, 1.0.6, 1.0.7, 1.1.0, 1.1.1, 1.2.0, 1.2.1, 1.2.2, 1.2.3, 2.0.0, 2.0.1, 2.0.2, 2.0.3, 2.0.4, 2.1.0, 2.1.1, 2.1.2, 2.1.3, 2.1.4, 2.1.5, 2.1.6, 2.1.7, 2.1.8, 2.1.9, 2.1.10, 2.1.11, 2.1.12, 2.1.13, 2.1.14, 2.1.15, 2.1.16, 2.2.0, 2.2.1, 2.2.2, 2.2.3, 2.3.0, 2.3.1, 2.3.2, 2.3.3, 2.3.4, 2.3.5, 2.3.6, 2.3.7, 2.3.8, 2.3.9, 2.3.10, 2.4.0, 2.4.1, 2.4.2, 2.4.3, 2.4.4, 2.4.5, 2.4.6, 2.4.7, 3.0.0, 3.0.1, 3.0.2, 3.0.3, 3.0.4, 3.0.5, 3.0.6, 3.0.7, 3.0.8, 3.0.9, 3.0.10, 3.0.11, 3.0.12, 3.1.0, 3.1.1, 3.2.0, 3.2.1, 3.2.2, 3.2.3, 3.2.4, 3.2.5, 3.2.6, 3.2.7, 3.2.8, 3.2.9, 3.2.10, 3.2.11, 3.2.12, 3.2.13, 3.2.14, 3.2.15, 3.2.16, 3.2.17, 3.2.18, 3.2.19, 3.2.20, 3.2.21, 3.2.22, 3.2.23, 3.2.24, 3.3.0, 3.3.1, 3.3.2, 3.3.3, 3.3.4, 3.3.5, 3.3.6, 3.3.7, 3.3.8, 3.3.9, 3.3.10, 3.3.11, 3.3.12, 3.3.13, 3.3.14, 3.3.15, 3.3.16, 3.3.17, 3.4.0, 3.5.0, 3.5.1, 3.5.2, 3.5.3, 3.5.4, 3.5.5, 3.5.6
Dependenciesarray, base (>=4.0 && <5), containers, directory, egison, filepath, ghc, ghc-paths, haskeline, mtl, parsec (>=3.0), random, regex-posix, strict-io, text, transformers, unordered-containers
LicenseMIT
AuthorSatoshi Egi, Ryo Tanaka, Takahisa Watanabe, Kentaro Honda
MaintainerSatoshi Egi <egi@egison.org>
CategoryCompilers/Interpreters
Home pagehttp://www.egison.org
Source repositoryhead: git clone https://github.com/egison/egison.git
Executablesegison
UploadedThu Feb 5 04:23:23 UTC 2015 by SatoshiEgi
DistributionsNixOS:3.5.6
Downloads13949 total (1063 in last 30 days)
StatusDocs available [build log]
Last success reported on 2015-02-05 [all 1 reports]

Modules

[Index]

Downloads

Maintainers' corner

For package maintainers and hackage trustees