タグ

関連タグで絞り込む (2)

タグの絞り込みを解除

schemeに関するWindymeltのブックマーク (5)

  • Practical Scheme

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

    Practical Scheme
  • GaUnit

    なにこれ? Gaucheで実装されたUnit Testing Frameworkです. 読み方は,「ごにっと」とかはどうでしょうか?いや,「ジー エーユニット」でもいいんですけど... 同様のものにSchemeUnit があります. 入手方法 ここからどうぞ インストール % sudo gosh install/install.scm 使い方 テスト用のモジュールを定義します。 (define test-your-module (use test.unit.test-case) (use your-module)) (selecte-module test-your-module) (provide "test-your-module") 定義したモジュールの中で名前が"test-"からはじまる引数なしの関数を定義します。 (define (test-your-func

  • Scheme:テストファースト

    開発の始めかた うーん,何を書けばよいかわからないので,とりあえず,私が何か Gaucheで作るときの手順でも書いてみます.- kou 前提 GAUCHE_LOAD_PATHは".:./lib:./src:${HOME}/local/share/gauche/site/lib"となっている. Gauche関係のものは~/work/gauche/以下に置いている. テストの実行はGaUnitに含まれているrun-test.elを使ってEmacs上で行っている. 下準備 プロジェクト(ちょっとしたものなら「ちょっとした」プロジェク トになる)用のディレクトリを作る.プロジェクト用ディレクトリ は以下のような構成となる.ここでは,プロジェクト名をXXXとする. XXX -+- lib ;; スクリプトを置くディレクトリ | +- test ;; テストスクリプトを置くディレクトリ % cd ~/

    Scheme:テストファースト
    Windymelt
    Windymelt 2017/02/02
    プロジェクト構成について
  • BiwaScheme

    About BiwaScheme is a Scheme interpreter written in JavaScript. Try it now Download biwascheme-0.8.0.js biwascheme-0.8.0-min.js Older versions are on github. Example <script src="biwascheme.js"> (console-log "Hello, world!") </script> Demo Picture language (from SICP) BiwaScheme for Mobile Games Hockey (a pong-like game) Dobon (a card game) 15 puzzle Tetris-like example Development REPL with IL in

  • Scheme初心者へのアドバイスを書いてみる - ヤドカリデンキ商会(ブログ版)

    id:tsuyoshikawaさんが初めてSchemeのコードを書いた(ここにあるコード)と聞いて「初めてでここまで書けるのはすげー」と思いました。ということで、このコードについて私ができる範囲でアドバイスしてみます。私自身はSchemeプログラマのレベル10でレベル3〜4程度のへっぽこSchemerなのですが。 閉じカッコの位置について コーディング・スタイルは典型的な「自転車置き場の議論」なのでそれほど気にする必要はないと思いますが、一応、触れておきます。 tsuyoshikawaさんは (define (size-of lis) (if (null? lis) 0 (+ 1 (size-of (cdr lis))) ) ) のように書いているのですが、実際には (define (size-of lis) (if (null? lis) 0 (+ 1 (size-of (cdr lis

    Scheme初心者へのアドバイスを書いてみる - ヤドカリデンキ商会(ブログ版)
  • 1