タグ

gaucheに関するsomemoのブックマーク (5)

  • Gauche(Scheme) でデバッグをする4つの方法 - higepon blog

    Gauche でコードを書いているときにコードが意図どおりに動かないことがあります。そのような場合にデバッグする方法を4つ紹介します。 前提 まず Gauche はリリースされている最新版を使った方が良いでしょう。Linuxのディストリビューションによってはパッケージが古い場合あります。 またScheme は関数型言語なので、デバッグの単位は関数(手続き)ごとに行うことが多いです。一つ一つの手続きが意図どおり動いているのか?を調べながら進めるのが基になります。 方法1 print デバッグ Gauche には今のところデバッガがありませんから基的には print デバッグがメインとなります。単純な print デバッグから見ていきましょう。 以下のような sum という手続きで print デバッグしてみましょう。 (define (sum n) (if (= n 1) 1 (+ n

    Gauche(Scheme) でデバッグをする4つの方法 - higepon blog
  • GaUnit::Tutorial.ja

    Tutorial.ja $Id: Tutorial.ja 450 2008-06-02 08:29:25Z kou $ 基 GaUnitを使った単体テストではテストをtest.unit.test-caseを継 承したモジュール内に書きます。 (define-module test-your-module (extend test.unit.test-case) (use your-module)) (select-module test-your-module) ... (provide "test-your-module") 下準備 ここでは, run-test.el を使ってテストを起動するようにします.run-test.elの設定は README.jaに書いているのでそちらを参考にしてください. run-test.elを使わない場合は以下のsymdiffディレクトリで以下の ように

  • Gaucheでユニットテスト。 - rokujyouhitoma's blog

    TDDを求めるエンジニアが多いので、gaucheでのユニットテスト例。 ;;テスト対象 (define (proc1 a b c) (if (and (<= a b)(<= a c)) (+ (proc2 b)(proc2 c)) (proc1 b c a))) (define (proc2 x) (* x x)) #| 以下ユニットテスト例。 |# ;;テストモジュールを読み込む (use gauche.test) ;;テストをスタート (test-start "proc1 test") ;;テスト群の名前付け。 (test-section "test group 1") ;;テスト項目 (test* "proc1 13" 13 (proc1 1 2 3)) (test* "proc1 25" 25 (proc1 2 4 3)) (test* "proc1 41" 41 (proc1 5

    Gaucheでユニットテスト。 - rokujyouhitoma's blog
  • scheme - traceとslib : 404 Blog Not Found

    2006年04月16日01:22 カテゴリLightweight LanguagesTips scheme - traceとslib ひげぽんに助け舟を出そうとして遭難しかけたので備忘録。 ひげぽん OSとか作っちゃうかMona- - SICPを読もう - (3) 1章 - 手続きによる抽象の構築(1-30ページ) 再帰的なのはすぐ解ける。 ;(略) 反復が分からない。 traceすればいいじゃん、と思って、実例をこさえようとして、手元にscheme implementationがないことに気がつき、さくっとgaucheをインストールして....あれ?traceがない!? そう。実は私がschemeをちゃんと使ってたのはもう20年前。その頃はすでに人様が用意していた環境で作業(というか授業)していたので、traceが標準でないことなどすでにGCの彼方にすっとんでいたのであった。 ざくっと検

    scheme - traceとslib : 404 Blog Not Found
  • trace/untrace for Gauche

    skimuさんがGGCライブラリとして公開されているものの中にあるtrace/untraceを 長年、使い慣れたChez Scheme 風に改造しました。 コードを公開されているskimuさんに感謝申し上げます。 使い方:(Gauche/Winの場合) 共有フォルダー gauche\share\gauche\0.9\lib\gauche にtrace.scmを保存してください。 (use gauche.trace) で呼び出します。 (trace)現在、トレース中の関数をリストで表示します。 (trace f) fをトレースリストに加えます。 (trace f1 f2 ...fn) f1...fnをトレースリストに加えます。 (untrace) トレース中の関数をすべて解除します。 (untrace f) fをトレースリストから除外します。 (untrace f1 f2

  • 1