2008-09-01から1ヶ月間の記事一覧

Draft: ライブラリ (tidbits remote-repl)

(tidbits remote-repl)はリリース版にはまだ含まれていません。使用するにはsvn repositoryのtrunkをビルドしてください。Remote REPLのサーバーとクライアントはinetソケットにて接続されます。サーバーにはブロックするタイプとしないタイプが用意されてい…

syntax-caseでどう書く?的

"Scheme どう書く?的 - ひげぽん OSとか作っちゃうかMona-のトラックバックを見ていたら・・・Scheme どう書く?的をScalaで書いてみた - 玲瓏庵にあるScalaのコードが羨ましかったので、ひげぽんさんの所のコメント欄に入れたコードを少しおしゃれに書き直…

Draft: ライブラリ (socket)

(socket)はリリース版にはまだ含まれていません。使用するにはsvn repositoryのtrunkをビルドしてください。 library: (socket) ソケットへのインターフェイスを提供します。

コンカレントGCの実装その2、マルチコアCPUでのコンカレントGCの性能

プログラムにアロケーションのない場合 GCの発生しないプログラムではコアの数に影響を受けないことを確認します。これにはイプシロンのプロジェクトに含まれているbench/gambit-benchmarks/tak.scmを使うことにします。(今回の計測にはメニューで簡単にコ…

コンカレントGCの実装その1

イプシロンではMostly-Concurrent Mark & Sweep GCを実装しています。このアルゴリズムにつきましては、こちらのページの解説がわかりやすくてお勧めです。http://www.nminoru.jp/~nminoru/java/cms/concurrent_mark_sweep.htmlイプシロンでの実装方法の解説…

マクロ展開の結果とコンパイルの結果を見る方法

マクロ展開 マクロ展開の様子を見るにはdebug-expandという手続きを使います。この手続きは0.9.6-update2(2008/09/03)より添付されているライブラリ(debug)からexportされています。debug-expandはコンパイラへの入力を直前で取り出し、これを見やすい形式に…

コンカレントGCの時間計測

LL Futureでid:sumiiさん、id:higeponさんと昼食をご一緒した時にコンカレントGCが話題となりました。 で、お二人に説明しながら思いました「http://code.google.com/p/ypsilon/とかに”It achieves a remarkably short GC pause time and the best performan…

イプシロン用のブログを始めました

まだ整理されていない情報、書きかけのドキュメントなどを書こうと思います。