タグ

schemeとLispに関するuokadaのブックマーク (9)

  • Lispを実装したくなったら読んでほしい本6選 - Arantium Maestum

    言語実装 Advent Calendar 2022の1日目の記事として書いた。 Lisp Advent Calendar 2022でも枠が空いていたのでダブル投稿。 プログラミング言語を実装してみたい!と思ったらまずは簡単なLispインタプリタから始めるというのは一つの王道だと思う。 複雑な構文解析は要らず最低限の再帰下降法パーサで手に入る構文木を、そのまま再帰的な関数で実行していくtree walking評価器。メモリ確保もヒープにそのまま置いていって、メモリ解放は実装言語のGCに任せるなりプログラムの終了時までやらなかったり。そんなインタプリタを作る経験から得られるものは非常に大きく、どんなプログラマでも一回は試してみてもいいのではないか?と思っている。(個人的な感想です) そんな簡易Lispを実装してみて沼にハマってしまい、より精緻な言語処理系を作りたいと思ったとする。その時点で:

    Lispを実装したくなったら読んでほしい本6選 - Arantium Maestum
    uokada
    uokada 2022/12/01
    "言語実装 Advent Calendar 2022の1日目の記事として書いた。" このカレンダーのエントリー全部読みたい。
  • とほほのLISP入門 - とほほのWWW入門

    1958年に MIT の John McCarthy によって設計されました。 FORTRAN(1954年)や COBOL(1959年)と肩を並べる、歴史の長いプログラミング言語です。 命名は「list processor」に由来していて、リストを主要に扱っています。 文と式の区別が無く、IF文などもすべて式として扱います。 演算子と関数の区別もなく、例えば 3 + 5 の加算は + 関数を用いて (+ 3 5) のの様に表します。 Common List, Scheme, Emacs Lisp などいくつかの方言があります。 Emacs という UNIX 上のテキストエディタのカスタマイズ言語としても利用されていました。 Common Lisp は ANSI INCITS 226-1994 として定義されており、現在の主流となっています。 Common Lisp にも SBCL(Stee

  • Lisp入門 - WisdomSoft

    Lisp入門 この講座は Common Lisp(ANSI X3.226-1994) に準拠しています。 Common Lispとは? 関数と式 数値データ 文字データ 変数 リスト リストの評価 値の比較 if特別式 progn特別式 condとcase tagbodyとgo ブロック 繰り返し処理 関数の定義 戻る

  • Scheme -- 犬飼 大

    x ...インストールできませんでした。 / ...インストールしていません。 * 現在(6.0-CURRENTと5.3-STABLE)はシステムのCコンパイ ラーに過渡的な問題があり、SCMをportsからインストールしようとし てもbrokenマークが付けられてインストールできないように見えてい ます。/usr/ports/lang/scm/Makefileを書き換えてbroken行を外し、 makeに引数を渡してコンパイルすれば動作するSCMを作成できますの で、次を参照して下さい http://www.freebsd.org/cgi/query-pr.cgi?pr=ports/71684 ** 6.0-CURRENT % cc -v Using built-in specs. Configured with: FreeBSD/i386 system compiler T

  • 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 回 川合史朗 さんの巻 〜
  • プログラマは皆どのようにしてLisperと化して行くのか?

    LispでWebサービスを作ればYahoo!に60億で買ってもらえると聞いて 実はCと同じくらい速いコードが書けると聞いて ルンバがLispで書かれていると聞いて リリカルなので 面接で笑われてカッとなった マンガでわかるらしいので iPhoneアプリが開発できると聞いて iアプリでLispが書けると聞いて 初めて手に入れたポケコンがAI-1000だった ハッカーと画家を読んでしまった 普通のやつらの上を行きたいので 舌足らずなので セグウェイを制御するコードが一日で書けるようになると聞いて How to become a Hackerを読んだ 専用の求人情報に応募できると聞いて プログラミングClojureを読んだ 初めての人のためのLispを読んだ 自前のLispで書かれた将棋が強かったので LispとPostScriptがあればハッピーになれると聞いて LOLの熱にあてられた On

    プログラマは皆どのようにしてLisperと化して行くのか?
  • 「計算機プログラムの構造と解釈(SICP)」を読み終えて by なつたん - なつたん

    ひげぽんさんの所をパクってテンプレートにして書いてみました。 練習問題をスキップしつつ、私も約半年でで読み終えました。とても楽しい日々を過ごすことができました。 SICPを読む過程で得たもの ・遅延評価とstream ・制約プログラミング、ロジックプログラミング、amb ・Emacs(Meadow)+gauche+Quackの組み合わせ便利 ・同じ事を表現するのに、抽象度を上げたり、下げたりできること。 ・手加減してあればLispのソースも追えるようになった。手加減していないのは駄目。 ・Lisp特有の、手続きを評価する→S式ができる→また評価する→S式ができる、という気持ち悪い再帰の存在。 ・SICP読み仲間ではないけどいろんなblogつながり。組み込みとFPGAだけでない、いろんな世界がある事をあらためて感じた。 SICPを読みはじめたときの動機を振り返る ・関数型言語について Lis

    「計算機プログラムの構造と解釈(SICP)」を読み終えて by なつたん - なつたん
  • Structure and Interpretation of Computer Programs

    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

  • 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

  • 1