タグ

schemeに関するtaninswのブックマーク (10)

  • Reddit - Dive into anything

  • Reddit - Dive into anything

  • 疑似Continuationモナド - MEMO:はてな支店

    HaskellのContinuationモナドを雰囲気だけGaucheに移植してみる。 Contクラス まず、疑似Continuationモナドとして、Contクラスを作る。 Contクラスが持つrunContスロットは同名のgetter関数を持つ。 returnは全然ジェネリックファンクションになってないんだけど、>>=と横並びにしたかったので。 (define-class <Cont> () ((runCont :init-keyword :r :getter runCont))) (define-method return (a) (make <Cont> :r (lambda (k) (k a)))) (define-method >>= ((c <Cont>) f) (make <Cont> :r (lambda (k) ((runCont c) (lambda (a) ((ru

    疑似Continuationモナド - MEMO:はてな支店
  • Tech talk: Gauche Scheme

    川合史朗さんが彼のScheme処理系、Gaucheについて話します。

    Tech talk: Gauche Scheme
  • おまけ: Scheme on YARV - ひとり勉強会

    これで今日のYARV勉強会はおしまいです。 って、これではやけに短くなってしまったので、おまけとして、るびま で触れられていた 当は、今回何か簡単な言語のコンパイラを作ろうと思っていたのですが、間に合いませんでした。誰か Scheme あたりで挑戦してみませんか。かなり簡単だと思いますよ。 これをやってみようと思います。 yasm.rb 記事で紹介されているyasmモジュールがRubyのtrunkに見つからなかったので、旧YARVのレポジトリ http://www.atdot.net/svn/yarv/trunk/lib/yasm.rb から拾ってきて適当に修正して使っています。変えたのは、YARVの仮想マシンオブジェクトを表すクラス名と - module YARVCore + class VM - YARVCore:: + VM:: メソッド名としてSymbolを渡すと怒られるみたいだ

    おまけ: Scheme on YARV - ひとり勉強会
  • Welcome to the SICP Web Site

    Wizard Book n. Hal Abelson's, Jerry Sussman's and Julie Sussman's Structure and Interpretation of Computer Programs (MIT Press, 1984; ISBN 0-262-01077-1), an excellent computer science text used in introductory courses at MIT. So called because of the wizard on the jacket. One of the bibles of the LISP/Scheme world. Also, less commonly, known as the Purple Book. from The New Hacker's Dictionary, 2

  • Scheme によるプログラミング入門

    内容 プログラミングについて体系的に学ぶとともに,実習を通して理解を深めます. プログラミング言語としては,文法が簡単で扱いやすいという理由で Scheme 言語を採用しています. 自宅のパソコンなどで、DrScheme を練習したい人 DrScheme は、 Dr. Scheme のWebページからダウンロードできます。 このWebページで、「Download DrScheme」をクリック、その後「Download」をクリック。 すると、Dr. SchemeダウンロードのWebページが現れるので「Download links」のところから、適切なリンクを選んでクリック。すると、ダウンロードが始まります。 この Web ページで公開している資料について 手作りの資料ですので, ミスが発見され次第,少しずつ手直しします.ご了承ください. Scheme 説明資料と演習問題 (参考) プログラ

    taninsw
    taninsw 2007/06/25
    How To Design Programs準拠っぽい?
  • クロージャについてもう少し考えてみました。 - Teny's Log

    昨日のエントリに Rui さんからコメントを頂きました。ありがとうございます。 私もなんだか同じイメージを持ってます。静的スコープでオブジェクトの寿命が永遠(無限エクステント)というのがまず初めにあって、その結果クロージャがあるという印象。 私が漠然と感じているクロージャへの解釈を、一言で表現されている様に思いました。 ここで無限エクステントに触れられていますが、実は私も、先のエントリを書いたとき、クロージャを副次的に作り出している仕様の一つとして、無限 (実装上は有限になるのでしょうが) エクステントを挙げようとは思ったのです。 しかし、レキシカルスコープとブロックの階層化 (手続きをトップレベル以外でも定義可能とか、lambda はどこでも書けるとか) を挙げることで、必然的に無限エクステントが求められることになると考えて、そちらを優先したのでした。 そして、その考えが、 例えば、レキ

    クロージャについてもう少し考えてみました。 - Teny's Log
  • なんでも継続

    Shiro Kawai まだ下書き Schemeの特徴をあげるときに、「継続」や「call/cc」が出て来ないことはない。 でも、R5RSのcall/ccの項をいくら読んでも、どうもよくわからない。 call/ccを使えばC言語のbreakみたいなのとか、コルーチンとかいう スレッドもどきとかが書ける、というのはわかったけど、一体そういうのが書けて 何が嬉しいのか、そこんとこがピンと来ないんだ。 今、そこにある継続 プログラミングの世界の概念には、禅の公案のようなものがある。 それを説明する文章はほんの一文なのに、最初に目にする時、 その文は全く意味をなさない、暗号のように感じられる。 だがひとたびその概念を理解すると、 その概念の説明は確かにその一文で説明されているのがわかるのだ。 そんな、「分かれば分かる」という禅問答の中でも 「継続」は最も謎めいたものの一つと言えるだろう。 文献を

  • http://web.archive.org/web/20021121230754/http://www.is.s.u-tokyo.ac.jp/~vu/97/jugyo/processor/compilerresume/index.html

  • 1