Lazy K
提供: miniwiki
Lazy K | |
---|---|
拡張子 |
.lazy |
パラダイム | 純粋関数型言語 |
型付け | なし |
主な処理系 | lazy |
影響を受けた言語 | Unlambda |
ウェブサイト | http://homepages.cwi.nl/~tromp/cl/lazy-k.html |
Lazy K(れいじーけー)
組み込み関数が3つしかない、純粋関数型言語である。似た言語として、同じような表記をする、非純粋関数型言語であるUnlambdaがある。
概要
純粋関数型言語として、チューリング完全でありながら、絶対必要なエッセンスだけを抜き出したプログラミング言語である。遅延評価を行う。使用するにも、処理系を実装するにも、コンビネータ論理の知識が必要である。
標準入力をプログラムである関数の引数として受け取る。ただし、標準入力は1バイトごとのチャーチ数のスコットエンコードされたリストとしてエンコードされ、出力も同様に1バイトごとのチャーチ数のスコットエンコードされたリストとなる。
Lazy K にて Unlambda を実装した場合、Unlambda で Unlambda を実装した場合に比べて約1/10のソースサイズで収まる。
外部リンク