タグ

lispに関するuemuのブックマーク (10)

  • ((Pythonで) 書く ((さらに良い) Lisp) インタプリタ)

    ((Pythonで) 書く ((さらに良い) Lisp) インタプリタ) Peter Norvig / 青木靖 訳 前のエッセイでは、90行のPythonコードでシンプルなLispインタプリタを書く方法を示した(lis.py)。このエッセイでは、3倍込み入っているが、より完全なlispy.pyを実装しよう。それぞれの節で1つの機能追加を扱っている。 (1) 新しいデータ型 - 文字列、論理型、複素数、ポート Lispyへの新しいデータ型の追加は3つの部分からなる。データの内部表現、それを扱う手続き、読み書きのためのシンタックスだ。ここでは4つの型を追加する(入力ポート以外はPythonのネイティブ表現をそのまま使う)。 文字列 文字列リテラルはダブルクォーテーションで囲まれる。文字列の中で \n は改行を、\" はダブルクォーテーションを意味する。論理型  構文 #t と #f はTrue

    uemu
    uemu 2010/10/12
    おもしろそう
  • はじめのいっぽ

    Schemeのインタプリタ(システム)が起動されると,プロンプト(入力を促すマー ク)を表示して,ユーザからの入力を待つ状態になる.このプロンプトが出てい る状態をトップレベルと呼ぶ.トップレベルにおいて,キーボードから式を入力 し,最後に入力の終わりとして「改行」キーを入れると,システムは入力された 式をすぐに計算(評価)して,結果として得られた値を返し(表示し),再びトップ レベルに戻り,入力を待つ状態になる. > -78 -78 > (+ 2 1) 3 > (* 2 3 4) 24 ここに書かれているように,Schemeの式は括弧を使って表現される.括弧の中の まず最初に演算記号があり,それに続いて演算データが並べられる.このような 記法を前置記法という.演算データがまた別の式になっていてもよい. > (* 2 (+ 1 4 5) (/ 12 3)) 80 ファイルのロード > (l

    uemu
    uemu 2005/09/07
    schema入門
  • On the Relationship Between Python and Lisp PythonとLispの関係について

    uemu
    uemu 2005/09/07
    pythonとlisp pythonの分かりやすさと高度さのバランス
  • memoization

    What is Memoization? Memoization is storing the result of a particular calculation, so that the next time the result is needed, instead of performing the calculation again, the stored result is taken instead. Where memoization can be useful is for costly, but pure functions: the result for a set of input values is stored in some kind of map (association list, hash table, ...) to allow for a cheape

    uemu
    uemu 2005/08/31
    javascriptでブラウザ上に表示されているlispのコードブロックが可視化
  • (Scheme) (Lisp)

    サービス終了のお知らせ いつもYahoo! JAPANのサービスをご利用いただき誠にありがとうございます。 お客様がアクセスされたサービスは日までにサービスを終了いたしました。 今後ともYahoo! JAPANのサービスをご愛顧くださいますよう、よろしくお願いいたします。

    uemu
    uemu 2005/08/21
    丁寧な解説
  • GaucheによるSchemeプログラミング

    No contributions on Sunday, June 19, 2022 No contributions on Monday, June 20, 2022 No contributions on Tuesday, June 21, 2022 No contributions on Wednesday, June 22, 2022 No contributions on Thursday, June 23, 2022 No contributions on Friday, June 24, 2022 No contributions on Saturday, June 25, 2022 No contributions on Sunday, June 26, 2022 No contributions on Monday, June 27, 2022 No contributio

    GaucheによるSchemeプログラミング
    uemu
    uemu 2005/08/18
    Scheme Gauche入門
  • なんでも継続

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

    uemu
    uemu 2005/08/14
    使わないまでも 考え方を理解するのは面白い
  • Scheme:Schemeプログラマのレベル10

    emeitchさんのリクエストより。元ネタは Perlプログラマのレベル10。 私家版、Schemeプログラマのレベル10 くれぐれも気にしないように。 レベル0 SchemeとかLispとかいうカッコだらけですごくわかりにくい言語があることは知っているが、 最強とか主張する信者がいるらしいのでなるべく関わらないようにしている。 EmacsLisp?もその親戚らしいけどコードを見ただけでくらくらする。 でも便利なマクロは自分の.emacsにコピペしている。 レベル1 Schemeに関するwebサイトを見たり、大学の講義での説明とかを聞いて、 factorialとかappendとかreverseとかを書いたり、 ネストした木構造のノードの数を数えたりできる。 でもそれが何の役に立つかわからない。こんな言語で実用的な プログラムが書けるなんて信じられない。 カッコの位置を間違えて動かないプロ

    uemu
    uemu 2005/08/13
    なんか かっこいい
  • OOエンジニアの輪! 〜 第 21 回 川合史朗 さんの巻 〜

    Hope is a good thing, maybe the best of things, and no good thing ever dies. (希望は良いもの、おそらく最上のものだ。そして、良いものは決して消えない。:『ショーシャンクの空に』より) 高林さんとのつながり -- 今回は、高林さんからのご紹介ですが、どういったつながりですか? 実は、直接お会いしたことは一度もないんです。一番最初はですね、Paul Graham の『Beating the Averages』 っていうのを、私が翻訳(邦題『普通のやつらの上を行け』)させて頂きまして、それの感想をメールで頂いたのがきっかけです。それから、私が開発している Scheme 処理系(Gauche)を使って頂いています。 -- 川合さんにとって翻訳って、あれは自分で読んで面白いものをみんなに見てもらう、っていうところですか?

    OOエンジニアの輪! 〜 第 21 回 川合史朗 さんの巻 〜
    uemu
    uemu 2005/05/02
    ハワイのスクエアで働いていたこともあったそうです
  • A Slice of My Life

    Practical Scheme プログラミング言語Schemeについて。 (→WiLiKi)。 Island Life 南の島で暮らす毎日。更新停滞中。 Addicted to Stephen King 睡眠不足になるとわかっていながら新作が出ると買ってしまう、 スティーブン・キング中毒者の告白。 (→掲示板)。 Storage of Scribbles 雑文庫。 Technical Memorandum 技術メモ。 Shiro Kawai shiro at lava dot net

    uemu
    uemu 2005/05/02
    gaucheを開発されてハッカーと画家の翻訳もされた川合さんのHP 
  • 1