Gauche > Archives > 2010/12/21

2010/12/21 01:25:48 UTCshiro
#
今日も天気悪いなあ。月蝕は無理かなあ。ハワイはベストポジションなんだけどなあ。
2010/12/21 01:50:11 UTCkazu
#
山本です。
#
おかげさまをもちまして、slib の wttree.scm に我々の修正が入りました。
#
http://cvs.savannah.gnu.org/viewvc/slib/wttree.scm?root=slib&view=log
#
変更はこれで見れるはずです。
#
http://cvs.savannah.gnu.org/viewvc/slib/wttree.scm?root=slib&r1=1.9&r2=1.10
#
説得するために書いたテストコードも入れてもらえました。
#
http://cvs.savannah.gnu.org/viewvc/slib/wttree.scm?root=slib&r1=1.9&r2=1.10
#
MIT/GNU Scheme の方は、メンテナーの Taylor さんが書いた bb-tree.scm に置き換わることになりそうです。
#
http://mumble.net/~campbell/scheme/bb-tree.scm
#
確認していませんが、おそらく Taylor さんが wttree.scm をスクラッチから書き直すときに、Haskell の Data.Map を参考にして、両者が採用しているアルゴリズムのバグを発見し、Haskell コミュニティにバグレポしてくれたんだと思います。
2010/12/21 01:55:12 UTC(び)
#
OS Xに含まれているiconvにはUTF-8-MAC UTF8-MACなんてのがふくまれてますね >とおる。
2010/12/21 02:12:56 UTCshiro
#
bb-tree.scmはBSDLか。Gaucheにも貰おうかな。けどbb-tree/updateはかなり真面目にlambda liftingをやってもif-foundかif-not-foundに渡すlambdaはクロージャを作らないとならないように見えるんだが、MIT Schemeではどういうコンパイル結果になるんだろう。
2010/12/21 02:15:22 UTCkazu
#
ところで、出力関数は Gauche では print で、MIT/GNU Scheme では format ですが、ポータブルに書くには何を使えばいいですか? slib の printf を使うのが正解ですか? (リストはちゃんと表示してくれるんだろうか。。。)
#
bb-tree.scm をもらってくるのは 2 週間ぐらい待った方がいいです。Taylor さんは、これから我々の成果を入れるみたいなので。
2010/12/21 02:19:21 UTCshiro
#
目的によると思います。最小限の出力ならdisplay, write, newlineでやれば完全にポータブル。GaucheのprintはR5RSで容易に実装可能なので、printの定義も含めてしまうという手も。より高度なフォーマッティングが必要な場合、slibのprintfやformatは(slibが動く処理系間でなら)slibを前提としてポータブルと言えるでしょう。
#
formatのごく基本的なサブセットについてはsrfi-28とsrfi-48でも定義されていて、サポートしてる処理系間ではポータブルです。srfi-48はまだあんまり採用されてないかも。
2010/12/21 02:25:19 UTCenami
#
pass4/$LSET の free. と pass4/$LAMBDA の loop は使われてないですが、まだ変更途中?
2010/12/21 02:26:51 UTCshiro
#
pass4全体がまだ途中です。中途半端なところでコミットしちゃったな。
#
pass4/$LSETはrlet1の間違いっぽい。
2010/12/21 02:29:13 UTCenami
#
まあ、 diff 眺めているだけなので。
2010/12/21 02:29:55 UTCshiro
#
あ、そんなことないか >pass4/$LSET。pass4/add-lvarにfree.を渡すべきなんだな。
#
ほんとはブランチ切って途中経過をコミットしとくべきなんだろうけどsvnでブランチ切るの重くて。
2010/12/21 02:43:50 UTCkazu
#
display で OK でした。ありがとうございます。
2010/12/21 04:59:51 UTCshiro
#
今日もAla Moana近辺は停電で大変だったようだね。とおるくんのところは大丈夫だろうか。
#
Kapahuluの舗装がぼこぼこになってた。穴だらけ。これから雨期なのにどうなることやら。
2010/12/21 10:45:47 UTCshiro
#
「NoSQLをRDBの代わりに使うと、どういう恐ろしいことが起こるか」http://www.publickey1.jp/blog/10/nosqlrdbpartake.html これNoSQL vs RDBって話じゃなくて単にまともなindexもACIDもないDBを使ったってだけなんじゃ?
#
あーでもNoSQLってどこまでを指すのか良く知らないなあ。AllegroGraphはNoSQLに分類されるのかな? RDBでないってことならそうだけど、key-valueストアではないからなあ。
2010/12/21 10:54:39 UTC(び)
#
厳密な定義はないんじゃないんですかね。どことなく、分散KVSを中心に境界はぼやぼや、って印象ですけど。
2010/12/21 21:04:31 UTCとおる。
#
最近の雨はすごいですねぇ。うちの周りは比較的水はけがいいのと、去年かおととしくらいに Kapiolani Blvd. が舗装しなおされたのでだいぶ良くなってます。
2010/12/21 21:11:06 UTCとおる。
#
リレーショナルな情報をリレーショナルじゃない DB にいれちゃうと、そりゃ壊れますよねぇ。RDB って覚えることもたくさんあるし(オラクルは試験が商売になるくらいだし)、そもそも他の何かで簡単に置き換えられるほどカジュアルなものではない気がします。
2010/12/21 21:17:55 UTCshiro
#
リレーショナルな情報はrdfの3つ組にマッピングできるし、AllegroGraphはACIDだからconsistencyやatomicityの心配はいらないですぜ。ただ、できるからってAllegroGraphをRDB的に使うっていうのはやっぱり本末転倒で、それぞれ得意分野はある。だからNoSQL vs ACIDといった時にそれぞれの得意分野なるシナリオを比較するならいいけど、ACIDの有無といったレベルの話をしてもしょうがないんじゃないかなあ、と思ったのです。
2010/12/21 21:24:27 UTCshiro
#
s/NoSQL vs ACID/NoSQL vs RDB/
2010/12/21 21:28:15 UTCeyasuyuki@twitter
#
スリッパが下駄でないことは自明なのに、スリッパが下駄でない点をあげつらって溜飲を下げたい(?)人が後を絶たない。
2010/12/21 21:37:23 UTCshiro
#
うーん特定のシナリオで具体的なシステムを比較するのは意味があると思う。××するのに従来は下駄を履いてたけどCrocsを履いてみたらこうなったとか。でもその比較はCrocs特有のものかもしれないのにサンダルと下駄の比較だと言ったらミスリーディングかなと。
2010/12/21 21:40:24 UTCeyasuyuki@twitter
#
なるほど。RT : shiro: その比較はCrocs特有のものかもしれないのにサンダルと下駄の比較だと言ったらミスリーディング
2010/12/21 21:41:59 UTCshiro
#
まーでもLTのタイトルだからわざとキャッチーにしたのかもしれないなあ。
2010/12/21 21:52:44 UTCとおる。
#
あー、RDF は別格だと思います。あ、でも、分散 KVS でオントロジーとか、やってるひといるかな? それはそれで面白そう。
2010/12/21 23:12:27 UTCえんどう
#
Ubuntu 10.4でapt-get install gaucheするとこんなエラー。
#
gosh -V
libgauche version mismatch: libgauche 0.9,utf8,pthreads, expected 0.8.13,utf8,pthreads
#
$ ls -l /usr/lib/gauche
合計 8
drwxr-xr-x 3 root root 4096 2010-12-22 08:13 0.8.13
drwxr-xr-x 3 root root 4096 2010-12-22 08:13 site
2010/12/21 23:14:55 UTCshiro
#
はて、goshのメッセージからするとgoshだけが0.8.13でlibgaucheが0.9のようだけど、lsの結果はライブラリも0.8.13
2010/12/21 23:23:09 UTCshiro
#
どっちにせよパッケージングをしくじってるような。
2010/12/21 23:36:16 UTCshiro
#
これの結果はどうなりますか > えんどう
#
strings /usr/bin/gosh | grep utf8,pthreads
#
strings /usr/lib/libgauche.so | grep utf8,pthreads