タグ

2007年7月30日のブックマーク (2件)

  • 線形論理とコンピュータ革命 - 言語ゲーム

    週末は Linear Logic and Permutation Stack -- The Forth Shall Be First http://home.pipeline.com/~hbaker1/ForthStack.html 読んでいた。思ったのは、線形論理が私の人生の疑問の半分くらいを解決するだろうという事。そしてアランさんの言うコンピュータ革命とはこういう事なのかも知れないという事。 身分不相応にも未来を予測してみる。近い将来、小学校で習う算数は線形論理に基づいた物になる。未来の子供達は、カッコや優先順位や変数に悩まされる私達の数学を見て、何て野蛮で非能率なのだと言うだろう。まるで我々が漢数字やローマ数字の数学を、きわめて技巧的で非論理的だと思うように。 線形論理に基づくプログラミングとは、変数の使用を一度しか認めないプログラミングの事を言う。一度しか認めなくてプログラムなんか

    線形論理とコンピュータ革命 - 言語ゲーム
    sshi
    sshi 2007/07/30
  • L2Lisp in Ruby:CodeZine

    はじめに P.Graham著『On Lisp』に示されているように、現代的なLispプログラミングでは静的スコープ(字句的スコープ)と末尾呼出し(末尾再帰を含む)の最適化のもとでのマクロが重要な意味をもちます。しかし、今まで処理系作成の初心者が内部に手を入れやすい手頃な大きさの実装が事実上ありませんでした。 ここでは、そういったモダンな特徴を備えた小さなLispインタープリタL2LispをRubyで作ってみます。L2Lisp(Little Lambda Lisp)は、Lispの理論的背景であるラムダ算法(lambda calculus)に対し、有力なLisp方言であるSchemeと同程度に忠実である一方、その他の点では広く普及しているEmacs Lispのサブセットとしたオリジナルの小型Lispです。 実行例としてtak関数を定義し、実行する様子を示します。Ruby以外に必要なのはL2Li

    sshi
    sshi 2007/07/30