Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/fumieval/lazykq
Pure Functional Joke Programming Language
https://github.com/fumieval/lazykq
Last synced: 23 days ago
JSON representation
Pure Functional Joke Programming Language
- Host: GitHub
- URL: https://github.com/fumieval/lazykq
- Owner: fumieval
- Created: 2011-10-29T04:45:13.000Z (about 13 years ago)
- Default Branch: master
- Last Pushed: 2011-10-30T12:32:42.000Z (about 13 years ago)
- Last Synced: 2024-10-15T06:50:54.872Z (2 months ago)
- Language: Haskell
- Homepage:
- Size: 102 KB
- Stars: 2
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README
Awesome Lists containing this project
README
LazyKQ ver. ダァダァダァダァダァダァ
LazyKQはあの「ダァ!シエリイェス!!」だけを使うプログラミング言語ダァ!
ダァダァダァダァダァダァ!オプション!シテイシイェス!!
kq [options] [filename]
オプション:
-d ソースコードを標準入力から読み込みまス。
-r 出力をバイト列に変換せずに、式のまま返します。
ダァダァダァダァダァダァダァ! ビルドシイェスス!コンパイルにはGHCが必要ダァ!
$ ghc kq.hs -o kq
$ ./kq README
Hello, world!
ダァダァダァダァダァダァ!ダァダァ! ブンポウ!シメシイェスス!「ダァ、シエリ、イェ、ス」以外の文字は無視されまス。
ダァは関数適用、シエリはS、イェはK、スはIを表しまス。半角カナにも対応しています。
「ダァAB」で、AをBに適用しまス。
「ス」は引数をそのまま返す関数ダァ!
「イェ」は引数を2つ取り、最初の引数だけを返ス関数でス。
「シエリ」は引数を3つ取り、「3つ目の引数に1つ目の引数を適用したもの」を「3つ目の引数に2つ目の引数を適用したもの」に適用する関数でスス。
コードが空の場合は恒等関数になりまス。
#から後ろは行末まで無視されイェス。関数はカリー化されており、引数はひとつずつ適用されまス。そのため、引数を複数取る場合はそれだけダァが必要になるのダァ。このように評価されまス。
ダァスx = x スは恒等関数でス。ダァ ダァイェ x y = x ヒキスウの一つ目を返しまス。
ダァ ダァ ダァシエリx y z = ダァ!ダァxzダァyz やや複雑ですが必須でス。ダァ!ニュウシュツリョクシェス!
入力は1バイト単位でチャーチ数のリストに変換されます。入力の終わりはチャーチ数256で表されまス。
結果もチャーチ数のリストとなり、256以上の数が出現するまで標準出力に書き出されまス。
256以上の数が出現した場合、256を引いた値をリターンコードとして終了しまス。kq.hs LazyKQのインタプリタ。
README このファイル。これ自体もLazyKQのコード。
examples
echo.kq 入力をそのまま返す。
helloworld.kq Hello, worldを表示。
primes.kq 素数を順に表示。
unlambda.kq Unlambdaの完全なインタプリタ。Hello, world!
ダァ!イェダァダァ!シエリダァダァ!シエリス!ダァ!イェダァダァ!シエリダァ!イェダァダァダァ!シエリスス!ダァダァ!シエリダァダァ!シエリダァ!イェシエリイェス!
ダァダァ!シエリダァダァ!シエリダァ!イェシエリイェダァダァ!シエリダァダァ!シエリダァ!イェシエリイェダァダァダァ!シエリダァダァ!シエリススス!
ダァダァ!シエリダァダァ!シエリダァ!イェシエリイェス!ダァ!イェダァダァ!シエリダァダァ!シエリス!ダァ!イェダァダァ!シエリダァダァ!シエリダァ!イェシエリイェ!
ダァダァダァ!シエリダァダァ!シエリダァ!イェシエリイェス!ダァダァ!シエリダァ!イェダァダァ!シエリダァダァ!シエリダァ!イェシエリイェス!
ダァダァ!シエリダァダァ!シエリダァ!イェシエリイェダァダァダァ!シエリスス!ダァダァ!シエリダァダァ!シエリダァ!イェシエリイェス!ダァ!イェダァダァ!シエリダァダァ!シエリス!
ダァ!イェダァダァ!シエリダァ!イェダァダァダァ!シエリスス!ダァダァ!シエリダァダァ!シエリダァ!イェシエリイェス!ダァダァダァ!シエリスス!
ダァダァ!シエリダァダァ!シエリダァ!イェシエリイェダァダァ!シエリダァダァ!シエリダァ!イェシエリイェス!ダァ!イェダァダァ!シエリダァダァ!シエリス!
ダァ!イェダァダァ!シエリダァ!イェダァダァダァ!シエリスス!ダァダァ!シエリダァダァ!シエリダァ!イェシエリイェス!ダァダァダァ!シエリスス!
ダァダァ!シエリダァダァ!シエリダァ!イェシエリイェダァダァ!シエリダァダァ!シエリダァ!イェシエリイェス!ダァ!イェダァダァ!シエリダァダァ!シエリス!
ダァ!イェダァダァ!シエリダァダァ!シエリダァ!イェシエリイェダァダァ!シエリダァ!イェダァダァ!シエリダァダァ!シエリダァ!イェシエリイェス!
ダァダァ!シエリダァダァ!シエリダァ!イェシエリイェダァダァ!シエリダァ!イェダァダァ!シエリダァダァ!シエリダァ!イェシエリイェス!ダァダァダァ!シエリスス!
ダァダァ!シエリダァダァ!シエリダァ!イェシエリイェダァダァ!シエリダァダァ!シエリダァ!イェシエリイェス!ダァ!イェダァダァ!シエリダァダァ!シエリス!
ダァ!イェダァダァ!ダァダァ!シエリダァダァ!シエリダァ!イェシエリイェダァダァダァ!シエリダァダァ!シエリスス!ス!ダァダァ!シエリダァダァ!シエリダァ!イェシエリイェス!
ダァ!シエリダァダァ!シエリダァ!イェシエリイェダァダァダァ!シエリスス!ダァダァ!シエリダァダァ!シエリダァ!イェシエリイェダァダァ!シエリダァダァ!シエリダァ!イェシエリイェス!
ダァ!イェダァダァ!シエリダァダァ!シエリス!ダァ!イェダァダァ!シエリダァ!イェダァダァ!シエリダァダァ!シエリダァ!イェシエリイェス!ダァダァダァ!シエリダァダァ!シエリススス!
ダァダァ!シエリダァダァ!シエリダァ!イェシエリイェス!ダァ!イェダァダァ!シエリダァダァ!シエリス!ダァ!イェダァダァ!シエリダァ!イェダァダァ!シエリダァダァ!
シエリダァ!イェシエリイェダァダァ!シエリダァ!イェダァダァ!シエリダァダァ!シエリダァ!イェシエリイェス!ダァダァ!シエリダァダァ!シエリダァ!イェシエリイェダァダァ!
シエリダァダァ!シエリダァ!イェシエリイェス!ダァダァ!シエリダァダァ!シエリダァ!イェシエリイェダァダァダァ!シエリダァダァ!シエリススス!
ダァダァ!シエリダァダァ!シエリダァ!イェシエリイェス!ダァ!イェダァダァ!シエリダァダァ!シエリス!ダァ!イェダァダァ!シエリダァダァ!シエリダァ!
イェシエリイェダァダァ!シエリダァ!イェダァダァ!シエリダァダァ!シエリダァ!イェシエリイェス!ダァダァ!シエリダァダァ!シエリダァ!イェシエリイェダァダァ!
シエリダァ!イェダァダァ!シエリダァダァ!シエリダァ!イェシエリイェス!ダァダァダァ!シエリスス!ダァダァ!シエリダァダァ!シエリダァ!イェシエリイェダァダァ!
シエリダァダァ!シエリダァ!イェシエリイェス!ダァ!イェダァダァ!シエリダァダァ!シエリス!ダァ!イェダァダァ!シエリダァ!イェダァダァ!シエリダァダァ!シエリダァ!イェシエリイェス!
ダァダァ!シエリダァダァ!シエリダァ!イェシエリイェダァダァ!シエリダァ!イェダァダァ!シエリダァダァ!シエリダァ!イェシエリイェス!ダァダァ!シエリダァダァ!シエリダァ!イェシエリイェダァダァダァ!シエリスス!
ダァダァ!シエリダァダァ!シエリダァ!イェシエリイェダァダァ!シエリダァダァ!シエリダァ!イェシエリイェス!ダァ!イェダァダァ!シエリダァダァ!シエリス!ダァ!イェダァダァ!シエリダァ!イェダァダァダァ!シエリスス!
ダァダァ!シエリダァダァ!シエリダァ!イェシエリイェス!ダァダァダァ!シエリスス!ダァダァ!シエリダァダァ!シエリダァ!イェシエリイェダァダァ!シエリダァダァ!シエリダァ!イェシエリイェス!
ダァ!イェダァダァ!シエリダァダァ!シエリス!ダァ!イェダァダァダァ!シエリダァダァ!シエリダァ!イェシエリイェス!ダァダァ!シエリダァ!イェダァダァ!シエリダァダァ!シエリダァ!イェシエリイェス!
ダァダァ!シエリダァダァ!シエリダァ!イェシエリイェダァダァダァ!シエリスス!ダァダァ!シエリダァダァ!シエリダァ!イェシエリイェス!
ダァ!イェダァダァ!シエリダァダァ!シエリス!ダァ!イェダァダァ!シエリダァダァ!シエリダァ!イェシエリイェダァダァ!シエリダァ!イェダァダァ!シエリダァダァ!シエリダァ!イェシエリイェス!
ダァダァダァ!シエリダァダァ!シエリスス!ス!ダァダァ!シエリダァダァ!シエリダァ!イェシエリイェス!ダァ!イェダァダァ!シエリダァダァ!シエリス!
ダァ!イェダァダァ!シエリダァ!イェダァダァ!シエリダァダァ!シエリダァ!イェシエリイェス!ダァダァ!シエリダァダァ!シエリダァ!イェシエリイェダァダァダァ!シエリスス!
ダァダァ!シエリダァダァ!シエリダァ!イェシエリイェス!ダァ!イェダァダァ!シエリダァダァ!シエリス!ダァ!イェダァダァダァ!シエリスス!ダァダァダァ!シエリスス!
ダァダァ!シエリダァダァ!シエリダァ!イェシエリイェス!ダァ!イェダァダァダァ!シエリスス!ダァダァダァ!シエリスス!ダァダァ!シエリダァダァ!シエリダァ!イェシエリイェス!!