Egison
version 3までは(Lispのような)S式の構文を持っていたが、version 4から中置記法(:=,++,::,+など)をサポートするなど、Haskellのような構文に変わっている。
新旧の併記のないコードは新構文(Ver.4以降)で記した。
and パターンと or パターンの使用例として、三つ子素数を抽出するパターンマッチを紹介する。
or パターン|は、p + 2とp + 4の両方にマッチするために使われている。
and パターン&は、p + 2またはp + 4にマッチした場合、その値を$mに束縛するために使われている。
この and パターンの使い方は、Haskell に提供されている as パターンの使い方に似ている。
#(p + 2)のように#からはじまるパターンは、値パターンと呼ばれる、値の同値性をチェックするパターンである。 パターンマッチのターゲットと、値パターンの中身(この例の場合,#(p + 2))が同値であった場合にパターンマッチに成功する。
双子素数のパターンマッチ
Egison でつくったスクリプトをコマンドにしたい場合はシェバン(shebang)を使えばよい。