タグ

lambda calculusとunlambdaに関するyouzのブックマーク (3)

  • Unlambda インタプリタを書いてみた - まめめも

    西尾泰和さんの最もタメになる「初心者用言語」は Unlambda!を見て、unlambda の初心者になるためにインタプリタを Ruby 1.9 で書いてみました。 d (delay) と入出力がなければとてもシンプル。各命令を定義通りに Proc に変換するだけ。いやあ、-> 記法はキモイですね。いつか慣れるのかな。 require "continuation" def unlambda_subset(s) s = s.split(//) t = ->() do case s.shift when ?`; t[][t[]] when ?s; ->(f){ ->(g){ ->(x){ f[x][g[x]] } } } when ?k; ->(x){ ->(y){ x } } when ?i; ->(x){ x } when ?c; ->(f){ callcc{|c| f[c] } } wh

    Unlambda インタプリタを書いてみた - まめめも
  • 翻訳:プログラミング言語Unlambda

    このページでは、Unlambda公式サイトの翻訳を試みます。 http://www.madore.org/~david/programs/unlambda/ 基的に超訳です。 訳の正しさは全く保証されません。 訳のおかしい部分は多数あります。 翻訳元サイトの許可を取ったりはしていません。 無認可です。 まだ翻訳途中です。 しかし、途中でへばりました。すみません。 プログラミング言語Unlambda Unlambda: 関数型言語の悪夢がやってくる (訳注: この訳は、 http://hw001.gate01.com/eggplant/tcf/unlambda/ から貰いました。) 目次 プログラミング言語Unlambda目次Unlambdaワールドの最新情報イントロダクションUnlambdaとは何かUnlambdaはどういう姿をしているのかUnlambdaのルールその他の難読化プログラミ

  • Unlambda -Tutorial-

    Unlambdaのチュートリアル 純粋関数型言語、かつ混迷言語 世に関数型言語と名のつくプログラミング言語はたくさんあります。 Lisp, Scheme, FP, etc... unlambdaはそれらの言語の中でも、 オブジェクトが関数しか存在しないという徹底した「純粋」関数型言語です。 Unlambdaを特徴付けるもう一つのものが、その強烈な難読性です (Unlambdaでプログラムを書くのはそれほど難しくはありません……あくまで読むのと比較して、ですが)。 何しろ、関数や変数に名前をつけるという事すらできないのですから、 後から読み返してその内容を理解するのは、ほぼ「不可能」です。 実際に、その難読性を体感していただきます。 次のプログラムは、アスタリスク(*)を216個連続して出力する「だけ」のプログラムです。 ```s``si`k.*`ki```s``s`k``s`ksk``si

  • 1