Entries from 2008-05-01 to 1 month
特に必要なかったので50日くらいお酒を飲んでいなかったが、今日はうれしいので乾杯しよう。 お疲れ〜。
Any time at all が絵に描いた納豆に聞こえる。 Any time at all, all you've gotta do is call and I'll be there.
あれひょっとしてないのかな。
いつもお世話になっている、Tsujimotoさんによる http://www.callcc.net/gauche/refj/ の isearch.js と SchemeDoc を組み合わせることに成功。 SchemeDoc の style の1つとして定義しました。 Tsujimoto さんが快く了解してくださったので、SchemeDoc の作…
ドキュメントを定義するだけのフォームを認識するように、schemedoc-extractor.scm を拡張。 define-doc を追加しました。 何がうれしいか? 処理系内部に C++ で実装された Scheme 手続きのドキュメントを *.scm なファイルに書けるようになります。 ; defi…
なんでだろう。また夜試そう。
スタバでひたすらドキュメントを書く。結局終わらないので明日も。 ついでに SchemeDoc の索引生成機能に手を入れてより便利に。(これはとある方にメールをしてあれしてから公開ということで)
「GWもする事はコーディング」の会で VM のディスパッチの高速化に Context threading なる手法があることを教わりました。 現在採用している Direct Threaded という手法よりも高速になったという論文を読みます。 「Context Threading: A flexible and eff…
多くの方に助けていただきながら、Autotools と格闘し何とか動くようになりましたので configure.inconfigure.ac と Makefile.am をさらします。 公開の意図ですが 初級以上の中級以下のサンプルがとても少ない(初級だと物足りず、オープンソースの大きなプ…
特定の PATH にインストール ライブラリとして *.scm を インストールされるようにする。 datadir = @MONAR_LIB_PATH@ data_DATA = library.scm 上記の PATH をC++からも知りたい -D で g++ に渡す。 本当は config.h で渡したいが方法を見つけられなかった…
はまった。。 libtool-2.2.2 is hardmasked. Why do you have it? Downgrade, it breaks too many things still
getopt を使ってオプションの parse をした。 いつもは自前で parse するがなんとなく getopt 。autotools の対応も終わり、レポジトリやドキュメントを整えている。 土日にもうすこしチューニングするか。それが問題だ。
AS 流行ってますよね。猫も杓子も AS。 #Lisp_Scheme で名言が <potix2> ASはActionSchemeの略称だと信じてますwそうそう。間違いない。</potix2>
乗っている自転車のグリップの部分が握りすぎて凸凹がなくなってすべるので人生初のグリップ交換。 値段が500円から10000円まではば広いのですが、気に入った安いのを買いました。 交換の方法は http://www.k2.dion.ne.jp/~style/bike/subpage3.html#%E3%82%…
Boehm GC Boehm GC は処理系にスタティックリンクしたいので libgc.a を作りリンクする。 できるだけ Boehm GC の configure を生かしたいので gc/configure.ac に手を入れて不要なオプションを disabled にする その後 autoreconf -i で configure を更新 m…
バッドノウハウの塊だなあ。 誰かキレイに作り直してくれないかな。 せめて reconf やら ./configure などの速度がもっと速ければ試行錯誤が短時間で終わって良いのだけど。
Common Lisp の special変数、progv など。 この辺熱く語れる人募集。 Scheme 以外の Lisp の話は学ぶところが多いです。 irc.freenode.net #Lisp_Scheme utf-8
新しめの Autotools (Autoconf&Automake) を使ってみよう - Slide list を参考に作業を進める。自前の Makefile が便利なんだけど、やっぱり配布するとなると autotools ですよね。 作業 autoscan #生成された configure.scan をリネーム mv configure.scan …
そういえば日本科学未来館 Miraikanに行きました。 サッカードディスプレイが面白かった。
kzkさんと id:nyaxt さん主催の「GWもする事はコーディング」の会に参加してきました。 一ヶ所に集まり淡々と思い思いのコードを書くそれだけの会です。 GCを書いたことのある人が全体の人数の数割を占めていたり、開催日を1日間違え前日に会場入りしている…
g++ が弱音を吐いた。 compiler.cpp: In function ‘scheme::Object getCompiler()’: compiler.cpp:6: internal compiler error: in add_stack_var_conflict, at cfgexpand.c:264 完全なバグ報告を送って下さい。 適切ならばプリプロセス後のソースをつけてく…
かわいいな。
OSASK の K さんが面白いことをやっているようです。 こんにちは、OSASK計画のKです。一部の人には既にお知らせしていますが、このたびOSASKアプリ(ぐいぐい01仕様)をMonaOS上で動かすためのMonaOSアプリを作りました。興味がございましたらどうぞ。 http:…
VM の dispatch で goto *(pc++); 的なことをやっているのですが、現在は pc はメンバ変数。 これをローカル変数にするとわずかながらコードが短くなりそう。(-Sで確かめた。) 作り的にはメンバ変数である必要はなさそうだし。 やってみるか。 追記 遅くな…
ライブラリ名毎に、名前空間の map を持っていて識別子の lookup に2つのにそれぞれ find が走っていた。 これをライブラリ名と識別子をくっつけた識別子を1つの map に格納するようにしたらとても速くなった。 Gauche の背中が見えてきた。
R6RS のテストケースを yhara さんと共有しようということに。(オンラインで広く公開) だいたいテストデータの共有フォーマットも決まったよ。
direct threaded code を導入した。苦労したが 2% 〜 10% ほどの効果があった。
irc.freenode.net #Lisp_Scheme utf-8 で待ち受けてみる。 Lisp/Schemeの話題なら何でもOK。(OCaml とかそっちの話も聞いてみたい。) ネタを投入できるかた、初心者。大歓迎><。 追記 今4人。 追記2 Common Lisp な人たちが来てたのしい! 出た話題 http…
direct threaded code にしようと思ったが断念。 Object 型にラベルのアドレスを格納しないといけない つまりポインタサイズ Object 型に入れるには tag bit が必要。 tag bit を使わずに生ポインタを入れる方法も考慮したが、コンパイラを VM 内で動かして…
ビューティフルコードを八重洲ブックセンターで購入。 今2章読んでる。1章の正規表現のコード短くて良いな。 しかしAmazonでも楽天でも品切れか。