タグ

再帰に関するayato0211のブックマーク (2)

  • Gaucheのライブラリモジュールの依存関係のグラフ - 再帰の反復blog

    最初に書こうと思ったのはファイルの依存関係とタイムスタンプから実行の必要なテストを見つけるプログラムで、makefile風に書くと dependency-list: **/*.scm update-dependency dependency-list $? for test in $$(find-test --backward dependency-list $?); do \ gosh $${test} ; \ done のようなプログラムだったのだけど、とりあえずモジュールの依存関係をグラフ化してみた 追記: Gauche 0.9.7に対して再びグラフ化してみた。 グラフ化はGraphvizのtwopiで、 twopi -Tpng dotファイル -o 出力ファイル.png みたいにして、dotファイルの生成は以下のプログラム。 (use file.util) (use srfi-1)

    Gaucheのライブラリモジュールの依存関係のグラフ - 再帰の反復blog
  • Practical Scheme

    Shiro Kawai 7/3/2000初出、3/29/2002更新 まあとりあえずカッコは我慢しよう。ラムダとやらも、関数ポインタ+環境データ ということで納得しよう。しかし、Schemeのループ構文(do)は許せないなあ。 ごちゃごちゃしてるし、途中で脱出できないし。 CやPerlのforやwhileの方がずっと使いやすいね。 え? doなんて使わない? じゃあどうやってループを書くんだ? 消えるループ 簡単だけど、よくありそうな例として、こんなのを考えてみよう。 入力テキストの行数を数える関数count_linesを書きたい。 Cで書くとすれば、こんな感じだ。 /* 例1 */ int count_lines(void) { int count = 0, c; for (c=getchar(); c!=EOF; c=getchar()) { if (c == '\n') count+

    Practical Scheme
  • 1