Erlang
Erlangのソースコードの例を示す。
次のソースコードはErlangによるクイックソートのアルゴリズムの実装である。
この例では関数qsortの再帰呼び出しを行っている。 再帰呼び出しはソート処理の対象が無くなった時点で終了する。 式[ X||X <- Rest, X < Pivot]は「 XをRestの要素として、XがPivotより小さい全てのXを選択する。」と読むことができる。 このようにErlangではリストを非常に簡単に扱うことができる。 Erlangでは異なる2つのデータ型の値の間であらゆる論理式を評価できるため、式の評価は単純である。 例えば、1 < aはtrueを返す。
ただしErlangにおける戻り値(trueあるいはfalse)を返す基礎的なしくみを変更する必要がある場合には、比較関数を使うことができる。 例えば、a < 1がtrueと評価される比較順序により順序付けられたリストが必要な場合などである。
次のソースコードではリストをリスト要素の長さを基準にしてソートする。