タグ

schemeに関するnora-programmerのブックマーク (19)

  • 大人のためのブラックボックス読解講座――クロージャとオブジェクトの微妙な関係(その2)

    大人のためのブラックボックス読解講座――クロージャとオブジェクトの微妙な関係(その2):プログラミング言語の進化を追え(1/3 ページ) 前回に引き続き、Scheme言語の処理系、Gaucheを開発している川合史朗氏が、クロージャの機能を検証し、関数型言語とオブジェクト指向言語の関係について解説していきます。今回は、クロージャとオブジェクトのより深淵を探求します。 抽象化ツールとしてのクロージャ C++的なオブジェクトの世界では、オブジェクトの実体とは「ひとかたまりの構造体としてメモリ上に置かれたインスタンス変数の値」にすぎません。オブジェクトのポインタを取れば、それは事実上、その構造体へのポインタを持っていることになります。クロージャを「関数」中心で見ていると、その実体は「オブジェクト」の実体とは異質なもののように思えるでしょう。 確かにクロージャのナイーブな「実装」は、関数ポインタと環

    大人のためのブラックボックス読解講座――クロージャとオブジェクトの微妙な関係(その2)
  • CodeZine:JavaScriptでつくるSchemeインタプリタの基礎の基礎(lisp)

    はじめに 現存するプログラミング言語の中で2番目に古いのがLispです。生まれは古くても、いまだに使われ続け、また、Rubyなどの新しい言語にも影響を与えています。そのLispの派生であり、シンプルさが売りなのがSchemeです。 ここではSchemeの簡単なインタプリタをJavaScriptで作ってみます。対象読者 稿はLispやSchemeは少し触ったことはあるけど、インタプリタは書いたことがないという方を読者対象としています。また、JavaScriptの文法や、簡単なデータ構造についての知識を前提とし、説明は省きます。必要な環境 テキストエディタと、JavaScriptが動くWebブラウザがあれば十分です。他に特に用意するものはありません。概要作成するインタプリタについて インタプリタのコードはJavaScriptで書き、HTMLのフォームを使って、Schemeのプログラムの入力お

  • 国語を「文系」に入れるのやめにしない? - wiliki.cgi?Shiro#b25428338f9ee4006289d1aa7a92bb93

    Schemeを愛するプログラマ。 Practical Scheme http://practical-scheme.net/ Island Life (blog) http://blog.practical-scheme.net/shiro 書いたり訳したりしたもののフォローアップ 著書 『プログラミングGauche』サポートページ 翻訳書 Shiro:HackersAndPainters: 『ハッカーと画家』サポートページ Shiro:LandOfLisp: 『Land of Lisp』サポートページ Shiro:ProgrammingClojure: 『プログラミングClojure』サポートページ Shiro:ProgrammingClojure2: 『プログラミングClojure 第2版』サポートページ UnixUser, OpenSourceMagazine記事 Shiro:Uni

    国語を「文系」に入れるのやめにしない? - wiliki.cgi?Shiro#b25428338f9ee4006289d1aa7a92bb93
  • Scheme:メタオブジェクトプロトコル

  • tips for screen -- screenの覚書

    GNU screenとは ひとつの端譁で、複数の仮想端譁を使うシステム。簡単切り替えができて、ひとつのターミナルで全てができるスグレモノ。CUI使いなら活用すべし。 使うには、おおまかにいって次の2つがあると思う。 プロンプトで 'screen' と打つ。 kterm -T kterm -e screen などとしておく(-Tを指定しないと、ウィンドウタイトルがscreenになって、個人的に気持ち悪い)。 個人的には、.xinitrcなどのファイルで呼び出すwindowとしてscreenを利用することを推奨。 GNU screenの使いかた GNU screenは、「コマンド文字」プラスなにかの文字でさまざまな機能を錫現できる。コマンド文字はデフォルトではC-aだが、.screenrc中でescape命令から設定できる。たとえば私は、 escape ^t^t としている。これはC

  • クロージャとブロック (前編) - Teny's Log

    上のエントリでは、これまで考察してきたクロージャについての簡単なまとめを行ないました。そのエントリで最後に書いたブロックにも着目しながら、これまで考察してきたクロージャについて、コードを挙げて検証してみようと思います。 さて、上のエントリでは、クロージャの基盤となっている三つの仕様を挙げています。 しかし、これらのうちの幾つかが欠ける場合でも、Scheme で言うところのクロージャではないかもしれませんが、有効に利用可能な手続きを活用することは可能であると、私は考えています。 これは、上で挙げた三つの仕様が揃わない言語環境に於いて、クロージャの様な仕組みを活用することが可能か、という視点に置き換えることができます。例えば、Emacs Lisp や Java などでクロージャの様なコードを書けるか否か、ということですね。 ;; Java にもクロージャを導入可能に (?) といった動きもある

    クロージャとブロック (前編) - Teny's Log
  • Write Yourself a Scheme in 48 hours

    Write Yourself a Scheme in 48 Hours A Haskell Tutorial By Jonathan Tang Contents Overview First Steps: Compiling and running Parsing A Simple Parser Whitespace Literal Numbers and Strings: Return Values Lists, Dotted Lists, and Quoted Data: Recursive Parsers Evaluation, Part 1 Displaying Values: Show and Typeclasses Evaluating Primitive Values: Pattern Matching Evaluating Primitive Functions: Firs

  • ガーベージコレクション

  • Schemeを作ろう 第1回

    Last update 1999/08/07 Scheme処理系の制作 第1回 (C)平山直之 無断転載は禁止、リンクはフリー 誤字脱字の指摘は歓迎 ゲームとスクリプト はい、また例によって行き当たりばったりな企画です。 といっても、相当長い間私の心の大きな部分を占めていた問題ではあります。 それは言語の処理系の必要性についての問題です。 ゲーム制作、特にRPG・アドベンチャーなどの「シナリオ」の重要性が高いものを作るのに必要不可欠なものに、「イベントスクリプトの処理系」というものがあります。ネットでもこうした「イベントスクリプトの処理系」について考える人が少なくないのも、こうした必要性の表われと言えるでしょう。 しかし、こうした処理系は、それぞれのプログラマが独自の文法でプロジェクトごとに作り直しているのが現状です。これが、コードの再利用、ひいては「気楽にゲームを作る」上での大きな障害に

  • 11. 継続 | Schemeへの道

    継続(continuation)とは,式を評価している途中のある時点で,『いま得られた 値を使って,この後は何を計算するのか』を表すものである.たとえば,Scheme の関数呼びだしの式を評価する際には,まず関数とその引数を評価して,その 後で関数に引数を適用する. ==> (+ (* 1 2) (* 3 4)) ;; ==> (+ 2 12) ;; ==> 14 14 この式の場合,まず「+」,「(* 1 2)」,「(* 3 4)」を評 価したのち,「(+ 2 12)」を評価する. 各部分式の評価が左から右へ進むものとすると, たとえば,「(* 3 4)」を評価した後にするべき計算,つまり継続は, 『いま得られた値に2を加える』 である.この式の評価を完了するためには, Schemeのシステムは,この継続を知っていなければならない. 継続は,「何を評価して,その値によって次には何を行う」

  • 独習 Scheme 三週間 Teach Yourself Scheme in Fixnum Days

    A practical introduction to the programming language Scheme

  • Introduction to Scheme Programming Language

    まえがき 世の中には様々なプログラミング言語があるが,文書では,Lispプログラミン グ言語の一つの方言であるScheme(スキーム)を紹介する.ここではSchemeを直観 的に理解することをまず目標として,形式的に完全であるかどうかにはこだわら ないことにする. ※見た目にもあまりこだわらないことにする:-) より詳しくは, 湯浅太一 「Scheme入門」 岩波書店 K.ディヴィグ著 / 村上雅章 訳 「プログラミング言語 SCHEME」 ピアソン・エデュケーション 2000 猪股俊光, 益崎真治 「Schemeによる記号処理入門」 森北出版 1994 D.P.フリードマン, M.フェライセン 著/ 元吉文男, 横山晶一 訳 「Scheme手習い」 マグロウヒル出版 1990 H. Abelson, G.J. Sussman and J. Sussman 著 "Strucuture a

  • Scheme プログラミング人門

    back (技術評論社 Software Design誌 2000年 7月号 に掲載された、「Scheme への招待 〜 GNU標準のスクリプト言語入門」の 記事を加筆修正したものです *1) はじめに みなさんは Lisp をご存じでしょうか。Lisp は 1950年代後半*2に John McCarthy によって 開発されたプログラミング言語で、 おもに記号処理などの分野で今も利用されています。 Scheme は Lisp から派生した言語のひとつで、 Guy Lewis Steele Jr. および Gerald Jay Sussman によって 1975年に開発されました。Scheme はよく 「Lisp の方言」などと呼ばれますが、Lisp よりも簡単な仕様 で、それでいて複雑なプログラミングが可能なように設計されています。 どのプログラミング言語にも長所と短所がありますが、S

  • Lambda Gate -- Scheme

  • A Slice of My Life - Practical Scheme

    このページでは、プログラミング言語Schemeの紹介、および 自作のSchemeのライブラリやアプリケーションの紹介をしてゆきます。 特に、ファイルをパーズしてテキストファイルを生成したりとか、 プロセスを監視したりとか、ちょっとしたGUIをでっちあげる と言った、職業プログラマとしてやってく上で避けて通れない雑用に便利な ライブラリが中心になる予定です。 SchemeはLisp系の言語で、見かけはLispに良く似ています。 Lispと聞いたら人工知能用言語だとか、もう古くさい言語だとか思われることも 多いんですが、CommonLispで書かれた実用的なアプリケーションはいろいろ ありますし、Schemeも拡張言語としてそれなりに使われています。 ただ、いかんせんマイナーな言語であることは間違いなく、メンテできる人が居ない とか他に分かる人が居ないという理由で採用が見送られることがあるのは

  • なぜ関数プログラミングは重要か

    John Hughes, Institutionen för Datavetenskap, Chalmers Tekniska Högskola, 41296 Göteborg, SWEDEN. rjmh@cs.chalmers.se この日語訳は原著者の承諾を得て山下がここに公開するものです。 この訳文についての、御指摘などは山下伸夫(nobsun .at. sampou.org)までおねがい いたします。 翻訳最終更新日 : 2011-09-17 原文 "Why Functional Programming Matters" 日語訳PostScript この論文は1984年以来何年ものあいだChalmers大学のメモとして回覧された。 1989年と1990年に幾分か改訂をしたのが[Hug89]と [Hug90]である。この版はもとのChalmer大学のメモ のnroff原稿をもとに

  • approx-search.el

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

  • http://www.sci.toyama-u.ac.jp/~iwao/Scheme/scheme.html

  • cut-sea

    ※ 今大会はFINA公認水着 arena aquaforce1を着用。大会のレギュレーションとしては高速水着可。 今年最初のレースはjexerの短水路大会。 arenaのaquaforce1を着用して臨んだ。 履くのは口がキツくてやっぱり大変だけど、一度履いてしまえばそれほどの締め付け感はない。 股関節周りの可動範囲も緩い感じで骨盤を固定させるような感じはなかった。 これが良いのか悪いのかは分らん。 プールの水温は若干温かめ。 昨年と違ってセンターラインが設置してあったのでこれはいいと思ってたけど、 5mラインが分りにくくてターンのタイミングがイマイチ自信無いままアップ終了。 辰巳での短水路は以前から同じはずなので、単に私がそこを気にするようになったというだけのことではある。 これまでターンはとりあえずそこまで神経使ってなかったし。 組とコース振り分けはセンターからのタイム順に振り分けじゃ

    cut-sea
  • 1