K.Sasada's Home Page

Diary - 2005 May

研究日記

皐月

_31(Tue)

ついついついつい TtT 終わり。なんてこった。きちんとまとまってて、良かった。


大学の建物の玄関の鍵がかかっていて、なんでだろうと思ったら大学の創立記念日だったらしい。知らなかった。


建物の下の木が倒れてる。うわー。


次回6月の RHG 読書会は、「なでしこ」のクジラ飛行机さんと「HSP」のおにたまさんをお招きして、言語処理系のお話をしていただくことにしました。多分。

どちらも、日本で有名な言語処理系開発者の方ですので、大変楽しみです。


IPA から IPAX のアンケートの解答を求められている。その中で、こんな質問が。

(やっぱり略)

要するに、やっぱり IPA としては、もしくは IPAX を企画するような人たちはオープンソース関連なんてどうでもいいんだなぁ。

IPAX でも、事業化して成功したら成功、みたいなことを言われたし。

まぁ、一番わかりやすい評価軸だよな。たしかに。オープンソースで成功と言ったって、なかなか見えづらい。


結構浮かれてる。明日は PRO だー。

_babie(Wed Jun 01 00:51:30 JST 2005)

IPAトップ>IPAについて 事業紹介>未踏ソフトウェア創造事業 http://www.ipa.go.jp/about/jigyoshokai/mito.html

には、「次世代のIT市場創出を担う」研究者の発掘とか「新市場を切り拓くソフトウェアの開発支援を行います」とかあるので、「事業化して成功したら成功」で矛盾はしてないかな。

_c0zydoll(Wed Jun 01 02:37:53 JST 2005)

 いえ、言葉足らずなだけで、はとちゃんさんをはじめたくさんの方々がオープンソースも積極的に支援されていますよ!

_ささだ(Wed Jun 01 07:44:39 JST 2005)

 はとちゃんさんってどなたでしたっけ。

_print(Wed Jun 01 09:29:34 JST 2005)

 税金、経産省に行った税金だから、目的は(日本の)産業振興だもの。

_c0zydoll(Thu Jun 02 01:16:57 JST 2005)

 羽鳥さん(小江戸らぐ)、未踏ユース立ち上げ等、彼の貢献は大だそうです。初年度のオーディションでは、一番コメントが多かった?

_30(Mon)

後輩の論文が通ったらしい。めでたい。

_29(Sun)

今更ながら、キーボードを打つ練習をしている。

今まで、右部分はたいてい右の人差し指、中指で打っていたのだけれど(右の薬指や小指がつかえない)、さすがにそれじゃまずいかなぁ、と。

今から癖を変えられるかなぁ。p とか薬指で打てるようになるだろうか。ピリオドも人差し指で打ってるなあ。

_maeda(Sun May 29 16:44:45 JST 2005)

 pは小指でしょ。

_しゅ(Sun May 29 23:45:43 JST 2005)

 僕は1を薬指で打ってます。小指には遠いから。それ以外は割と教科書通り。

_とおる。(Mon May 30 20:41:06 JST 2005)

 きょうこんなの教えてもらった→ http://www.e-typing.ne.jp/

_28(Sat)

http://www.rubyist.net/~matz/20050525.html#p02。一番のメリットは金でしょう。って、俺だけなんだろうか。

それ以外で考えてみると、交流とかそういうのを持ってくるのが無難なのでしょうないでしょうか。

うーん、穿ちすぎか。


class C
  Const = 1
end

class CC < C
  Const = Const * 2
end

p CC::Const

警告は出ない。なかなかアレだ。


はて、変なところが表に出てるなあ。


宇宙の果てのレストラン読了。

_27(Fri)

fmt = '00 {{A}} 11 {B} 22'

x = 'xx{B}xx{A}xx'
y = 'yy{A}yy{B}yy'

こんなものがあったとする。

それぞれ、'{A}' は x に、 '{B}' は y に変換したい場合、どんなプログラムを書けばよいか。


h = {'A' => x, 'B' => y}
p fmt.gsub(/\{\w\}/){|v| h[v[1..-2]]}

立石さんに教えてもらった。


LLDNのチケット無事購入。

_26(Thu)

viewcvs の root_as_url_component が思い出せなくて大変だった。


begin
  ...
rescue e
  ...
end

とやってはまった。

_25(Wed)

IPAX 2005 も終わってすでに結構たちましたが、振り返ってみる。

  • 18 日
    • ポスターはなかなかよい。と思う。cap
    • 入り口から Ruby という文字がさくっと見えるのはよかったと思う。cap
    • しかし、Lunascape2 のブースは目立ちすぎ。
    • となりの漫画支援システムも目立ちすぎ。
    • うちのブースは両隣の緩衝帯になっていた。かなり凹む。
    • すーくりのたてを貰いました。capcap
    • yarv の内容で発表しました。基本的に、既存のRuby処理系をけなすことが重要なんですが(ぉ、まつもとさんが前にいて少しあれでした。すみません。cap
    • レセプションでは結構豪華な料理だったと思う。
    • Ruby 関係者で飲み
  • 19 日
    • 人が全然来ない。
    • 4:30 頃に切り上げて、つくばへ。懇親会だけ出席させてもらって、さっさと帰る。
      • 少しだけ、知り合いに挨拶するだけで、話は何もできなかったように思う。残念。
  • 20 日
    • 人があんまり来ない。
    • Rast の発表を見学
    • 未踏(ユース)関係者で飲み

連日、0時に帰った。早すぎもせず、遅すぎもせず。

FQ。

  • Rubyってなに?
    • らびーって何?
    • どれくらい普及してるんですか?
    • 他の言語とどう違うの?
      • Curl とどう違うの?
      • アメリカとかじゃ全部 ColdFusion だよ(ほんとかよ...)
    • 全体的にこれに尽きた
    • これをアピールする展示ができなかった時点で、ビックサイトで出展する意味はなかった
  • Ruby が速くなるんですか?
    • どうやって速くなるんですか?
    • どれくらい速くなるんですか?
    • コンパイラですか?
    • JIT コンパイラですか?
    • AOT ってなんですか?
  • Ruby のここをなんとかしてほしい
  • これ出展して、何が嬉しいの? 何の意味があるの?

まぁ、来年は多分個人的には出しません。出しても意味が無さそう。まぁ、お祭りみたいなもので、出して楽しかったけれど。

Ruby の普及のための何か、を展示することは意味があると思うけど、一人じゃ無理。少なくとも、私じゃ無理。

とにかく、三日間立ちっぱなしなのはとにかく辛かった。

そもそも、Ruby って何 って人に、それを高速化しました、と言ってもさっぱりさっぱり。

手伝ってくれた卜部君、ポスター製作に手伝ってくれた人、どうもありがとうございました。


IRCより。ガーンの起源は巨人の星(http://www.webnews.gr.jp/mag2/backnbhtml/week_web_010425.html)。ほんと?


COINS コンパイラ・インフラストラクチャ協会

 COINS コンパイラ・インフラストラクチャ協会(略称COINS協会)は、会員相互の協力を通じて、本インフラストラクチャの改良、保守、配布を行うとともに、その利用技術の交流などを通じて、コンパイラ技術の発展と高度化をはかろうとするものです。

 コンパイラの研究者、技術者、教育者はもちろんのこと、コンパイラを勉強してみようとする方、コンパイラに興味のある方などに、会員となって活動と技術交流をすることをお勧めします。

コンパイラに興味のある方は是非。


しかし、理事会に従うとありながら理事会のメンバーが決まっていない(公開していない?)のはいいんだろうか。


parrot の最新のスライドない? って話で、ハンガリー語とかフランス語とかが出てきて。英語はないのかー。


File Simple Paste を公開してみる。ドラッグアンドドロップが楽ちん(Windows でしかやり方を知らないが)。


snmpにアクセスができてなかったので数時間調査。結果、/etc/hosts.allow の設定。

うがー。卜部君正解。どうもありがとう。


riece を試す。よくできてるなぁ。


http://www.sidhe.org/~dan/presentations/Parrot_Implementation.pdf をー。


手元でやろうと思っていた修正などを大体片付ける。コードがだいぶ書けなくなっていたんだけど、やっとリハビリができた感じ。

コード書かないと、駄目だなー。

_24(Tue)

グインサーガ 95 を読んでいるのだが、シルヴィアが不憫に思えてしまうのは俺だけなんだろうか。

この物語で一番不憫だ。

ちなみに、一番嫌いなのはイシュトヴァーン。

これは、作者が作者だから、ということもあるんだろうが。読了。

_yooese(Tue May 24 17:07:24 JST 2005)

 シルヴィアはほぼ唯一の「普通の人」だからなぁ。主要人物には殆ど存在しない「不細工」だし。

_ささだ(Tue May 24 21:04:51 JST 2005)

 あれー、不細工でしたっけ?

_23(Mon)

やっと普通に歩けるようになった。


今日の図書館。

  • グインサーガ 95

現在、end 命令ではスタックの巻き戻しのほかにPCが0でないかのチェックを行っている。0だったら vm loop から抜ける、というチェック。

end insn{
  ... // 巻き戻し
  if(pc == 0){
    goto finish;
  }
}

これを、vm loop から抜ける、という命令に分けるとどうなるか。

end insn{
  ... // 巻き戻し
}
endvmloop{
  goto finish;
}

このとき、スタックキャッシングがどうなってるかというのが非常に気になるところではる。

end の後は reg_A に必ず入っているはずだから、問題ないのかも。


しかし、このスタックキャッシングはかなりべたっと作ってあって、n-level への拡張ができない。もっときちんと考えて作るべきだったなぁ。


この場合、endvmloop に pc を動かさないといけない。それはいったいどこで誰がやるんだろう。いや、C レベルから入ってきた人がやるんですが。

その領域の準備をきちんとやるのはどうやるんだっけ・・・。

_babie(Mon May 23 09:07:42 JST 2005)

 クララが、クララが立った!

_ささだ(Mon May 23 12:01:04 JST 2005)

 立てないほどひどくはなかったんですけどね。

_22(Sun)

6月のRHG読書会ですが、なんか凄い人をお招きできそうです。

というか、そもそもどこがRubyなんだよ! みたいな。

_mput。(Sun May 22 12:58:05 JST 2005)

 む、確定?

_babie(Mon May 23 00:15:59 JST 2005)

 んー、お金あるかな。

_21(Sat)

足がえらい筋肉痛で歩けません。


各オブジェクトごとにロックが可能な構造はできるかな、と思っていろいろ考えているんですが、とりあえずこんなの。

if(obj->using != 0){
  obj->waiting = 1;
  wait();
}
.... 処理

if(obj->waiting != 0){
  resume_waiting(obj);
}
else{
  obj->using = 0;
}

いや、これじゃ全然駄目なのはわかってるんですが、とりあえず、こんなんでできたりするのかなぁ。どうなんだろう。


ハッシュ構造をよく使うので、とりあえずハッシュで毎回 pthread_mutex_(un)lock をやるような実装にしてみて、2 CPU 時にどれくらいよくなるんか調べてって感じにしてみようかなぁ。

別にそれで性能がシリアルになるわけじゃないので、並列度は多分出せるんじゃなかろうか。テスト環境どうしようかな...。


そういえば、三日連続帰宅が0時ちょいすぎだった。はやすぎもなく、遅すぎもなく。


そして今日は 12時に起き、13時〜19時まで昼寝。もういいや。

あとは筋肉痛が取れれば。


銀河ヒッチハイクガイド読了。スケールが大きいのか小さいのか。しかし、これ最初ラジオだったんですか。

_20(Fri)

帰宅。12時。


しかし、当日の午前などに連絡をメールでするのはいかがなものか(いくつか方面から貰った)。IPAX中ネットなんてつながってるわけないじゃん。


つくばからの帰りは二階建てバスの先頭に座れた。これは気分がいい。ぐっすり眠ってた。


インパクトあるプレゼンに「高橋メソッド」。せめて高橋さんの紹介くらい書こうよ。

ちなみに高橋メソッドは間の取り方がとても難しそう。高橋さんはかなり計算していたらしい。


それとも、メールは携帯に転送すべき、ってことなんだろうか。うーん。そんなことしたら spam で埋まりそうだなあ。


そういえば、朝の通勤電車の中、必死にA1パネルを持っていったのだけど、実は前日に持ち込むべきだったというオチ。うぅ、たしかに。


研究室に帰室。死にそうに腰が痛い。もうやりたくない。

一番心に残ったコメントに

これ展示して何がうれしいの?

ということだった。深く納得してしまった。IPAX 向けじゃないよねぇ、やっぱり。まぁ、一度くらいはやってよかったけど。


まつもとさんに並列実行時にインスタンス変数アクセスはどうやるんだ、と聞かれて答えられなかった。どうしよう。

_かん(Fri May 20 12:43:01 JST 2005)

 自家鯖でIMAPサーバ運用するとか>メール

_しゅ(Sat May 21 01:43:21 JST 2005)

 (Rubyで?)並列実行ってどうやるんだ?

_ささだ(Sat May 21 21:58:38 JST 2005)

 実は imap です。携帯から imap を見る方法がなく>かんさん もし並列にしたら、って話です>首藤さん

_ron(Sun May 22 00:30:44 JST 2005)

 対応がボロボロでゴメンなさい。 少しは直そうと思ってはいるのですが・・・

_かん(Sun May 22 01:43:23 JST 2005)

 これを使うとか。 http://namazu.org/~satoru/mobileimap/

_ささだ(Sun May 22 02:05:10 JST 2005)

 事情により使えないのです>mobileimap

_19(Thu)

今日もまた疲れそう。

大学 -> ビックサイト -> つくば -> 帰宅(予定)

つくば着が6:30 で 9:30 のバスで帰らないといけない。しょぼいぜ。

_さ(Thu May 19 21:22:40 JST 2005)

 意外と疲れなかった@二階

_さ(Thu May 19 22:37:10 JST 2005)

 東京着

_18(Wed)

寝坊しちゃいけない、と思ってたら全然眠れなかった。

んじゃ行ってきます。会場で会う人は宜しく。


帰宅。疲れた orz

でも、いろいろとお話できました。

_17(Tue)

着々と準備しないと。

  • ポスター(済み)
  • チラシ(済み)
  • ヲタ向けチラシ(済み)
  • 名刺(大学、日本Rubyの会 各100枚)

ほかになんか必要かなぁ。


あぁ、腹を決めないといけないのか orz


YARV Maniacs 出張版@IPAX 2005 なるものを作った。あんまり刷っていない。いや、こんなものをもらって喜ぶ人はあんまりいないと思うが・・・。


服装はRHG読書会と同じような予定。


つくづく、何かをはじめるよりも何かを続けるほうが大変だな、と思う。


時間ねー、のバナーを使ってる人たちは何がしたいんだろう。

_16(Mon)

5/18 (水) に、多分 yarv 関係の宴会みたいなことをやる予定です。参加希望される方はメールかなんかでお知らせください。


http://kazuhiko.tdiary.net/20050514.html#p02 より

確かに 20 人も人が集まって女性が一人だけっていうのは異様な図ですし、私も同感です。

...。女性が居ない状態が普通だと思ってる俺は駄目ですか。


kakaku.com、なんで画像なんだろう。


次回のRHGどうしようかな。いい加減そろそろ処理系の話がしたい。


集中講義いいなぁ。もぐろうかな。


で、あの危険性によって、短絡的に HT は悪、とりあえずオフ、というようになったら嫌だなぁ。


IPAX2005 で、ポスターセッション(みたいなもの)初挑戦。


恒例のアンケート更新。

_15(Sun)

HT の脆弱性の問題については青木さんが詳細な解説をしてくれました。感謝。

扱うデータによってメモリアクセスパターンが変わった場合に、それを他のプロセスが監視することができる、に変えておいたほうがいいかも。ライブラリがわの対策も同じ。


しかし、よくこんなこと思いつくね実際。この問題を完全に回避するソフトウェア側の工夫は思いつかないなぁ。

_14(Sat)

http://dkiroku.com/2005-05-10-10.html より、

あいかわらず全然編集されてなくてなげー。

編集はしてるんですが、なるべく雑談の雰囲気を壊さないようにしているため、無駄に長いともいえます。それは狙ってそのようにしているんですが(紙媒体では絶対できないですね)、それが嫌だ、という人も居るのか。

さて、どうするべきなんかなぁ。短い版と長い版を作る? それは無理だよね、労力的に。るびまにそんなに力をかけても、という気がする。それは最近、ずっと考えてることなんだけど。どうしたものなのかな。あ、もちろん短い版を作ってくれる人は大歓迎ですよ :)

自分だったら長いままのものが読みたいから、今の形式になってるんだけど、どっちのほうが多いのかね。

今度、とても短いものにしてみようか。インタビュー。でもなぁ、江渡さん後編を短くすると、スゲェ面白い話をバッサバッサと斬らないといけない気がする。でも、一度くらいやってみて反響を見るのもいいのかもしれないなぁ。

反響があれば8号は江渡さん長いバージョンで。おぉ、江渡さんで3号稼げる!


すみません、寝坊しました・・・。

_arton(Sat May 14 03:03:02 JST 2005)

 長いのがいいな。飛ばし読みすれば長い記事は短く読めるけど、短い記事の行間を補完して長く読むのは無理ぽ。

_hisashim(Sun May 15 00:08:39 JST 2005)

短い版を作ってくれる人は大歓迎

僭越ながら「Rubyについて」の「Rubyistになったきっかけ」だけを試しに編集してみました(コメントらしからぬ長さになってしまい申し訳ありません)。かかった時間は、整形に手間取りましたが、考える時間だけなら10分くらいでしょうか。

分量は半分くらいですが情報量はあまり減っていないと思います。もしかすると発言者の意図を取り違えて編集してしまったところがあるかもしれませんが、本人に校正してもらえば大丈夫ではないかと思います。

面白いけれど本筋から離れた話は、せっかくウェブなのですから、割愛するのではなく、編集済みのテキストの横に生の原稿へのリンクを設けておくというのはどうでしょうか。またはRubyist Magazineのように後注の場合は、長めの注釈にしてしまうという手もあると思います。

あと発言者の名前だけで1行を取るスタイルも、実際以上に長く感じさせる理由のひとつかもしれません。

私は毎回確実に作業できるか責任を持てないので、スタッフとして参加表明しかねているのですが、そういう人間でも貢献できるような方法が提供されているといいですね。


Rubyistになったきっかけ

ささだ それではRubyistになったきっかけは。いつ頃からRubyを使われてるんですか?

江渡 実は結構古いような気がするんですけど。90年代かなあ。この話があって自分の半生を振り返ってみたんですけど、順番から言うとまずPythonを使ってたんですね。それでPythonが嫌になって、というか、これじゃあかん!と思って、それでRubyになったんだけど。

田中 それ不思議だなあ (笑)

ささだ これじゃあかん!となったきっかけですが。

江渡 多分なんでって思うかもしれないけど、すごいわかりやすい理由があって、その時はPythonていってもJPython使ってたんです。今でいうJython、Java VM上で動くPython。あまりに遅くて使えないと思ったのが最初の理由。CPythonを使うという話もあったんだけど、Lightflow*18 っていう、フリーじゃないんだけど凄い綺麗なレンダリングしてくれるレンダラがあって。それが DLL としてしか配布されていなくて、拡張子が .so の Python のライブラリとしてリソースされていて。で、使ってみようと思って Python を使い始めたんだけど……

ささだ では、それが最初ですか。

江渡 いや、Pythonそのものはもっと前から触ってたんだけど、CPythonには全然触れてなくて。で、その時はJava VM上で動くっていう前提で、何かスクリプト言語を使ってみようと思ってたんですよ。で、JPythonを使ったんだけど、死ぬほど遅くて諦めて。その当時は、サーバはPerlで書いて、クライアントはJavaAppletで書いてっていう組み合わせが多かったんですよ。だからJava上でもう少し楽に書けるものとしてスクリプト言語をということで、JPythonとかを考えてたんだけど、遅くて。なので、やっぱりJavaを捨ててネイティヴな言語で、しかもオープンソースで、とか考えて、CPythonを使ってみたんだけど。なんでそこでRubyに流れたのかな?

ささだ Pythonの文法は知ってたんですよね。

江渡 うーん、なんか慣れなかったんだよね。お尻が座りが悪いっていうか、上る階段はあるけど下りる階段は無くて。階段を上っていくとスポッと抜けちゃうような。

田中 インデントのこと? いいじゃないですか。

江渡 僕は慣れなかったんだよね。あとその頃は、オブジェクト指向そのものを良くわかってなかったんだよね。

eto03.jpg

田中 Pythonをやっていたのはいつ頃? 多分1.4とかかな。2.0は使ってないよね。そうすると、長らく1.4だったから、1.4かなあ。*19

江渡 (メモを見て) 1999年の4月にJPythonを使ってますね。無謀なことに物理シミュレーションとかやろうとしてたんですね。1999年11月にLightflowを使ってますね。1999年12月に「JRubyなんてあったら良いんだけどなあ」って書いてますね (笑)

ささだ なるほど。Rubyが良いよ、っていう人は周りにいたんですか?

江渡 うん、いないよ。雑誌とかWeb上を調べて……そんな感じでしょうね。実はJRuby、Ruby on Javaっていうのは早稲田大学の五十嵐さん*20 が作っていた……というのが書いてあるなあ。で、何かRuby本を買ってるなあ。なんだか知らないけどPike*21 とかと比較してるなあ (笑) Pikeは元々MUD*23 を作ってる人が、その中に埋め込むために作った言語で、それがPikeっていう言語として設計されて、それからRoxenていうWebサーバに埋め込みの形で実装されて、当時そのRoxenていうのがヨーロッパで流行っていて、Roxenが良いよってオーストリアに行ったときに言われて。

ささだ オーストリアですか。じゃあ、江渡さんが、そのままPikeを使う可能性もあった、と。

江渡 なかったね (笑) ただ、なんとかっていうMUDで使われていた言語がこんな形で復活するなんて、とびっくりしたね。そういうのって世の中ありますよね。そういうわけで、実をいうとかなり色々天秤にかけてるんですよね。それでも、2000年にはかなりRubyを使い始めてるなあ。

ささだ その頃には天秤はRubyに傾いた、と。なるほど。

江渡 で、LightFlowの時に、Pythonからしか呼べないライブラリ (DLL) をどうするんだってことで、Ruby/Python*25 を使って、RubyからPythonのライブラリを呼び出す、みたいなことをやってますね。 そしたらRuby/Pythonに一箇所バグがあって動かなかったから、MLで教えてもらうってことをしてますね。

Ruby/Pythonていうのは、RubyからPythonを呼び出すんです。結構良くできてますよ。普通のPythonのオブジェクトをRubyのオブジェクトとして使える。最近見ないけど。 RubyPerlとかもありますよね。そっちは出来が悪いというか、オブジェクトとして扱えなくて、Perl側に存在するものは全部文字列としてしか見えないという。

田中 PerlにはInline::○○というのが結構沢山あって、たとえばInline::CっていうのはCのコードが書ける。で、確かInline::Rubyっていうのもあったと思うんだけど。

ささだ でも、あれは単にsystem関数で呼び出してるだけかと思ってたんだけど。

田中 どうだろう、そうかもしれない。

江渡 そうかもしれないけど、いわゆるちゃんとした埋め込み型のRubyがあるじゃないですか。あれで呼び出してるんじゃないですかね? それで、かなり面白いのが、ある人が冗談だか知らないけどInline::Perlというのを作っていて (笑) PerlからインラインでPerlを呼び出すという。確か早川さん*26 も同じネタでやってたんじゃなかったかなあ。 最近、Rubyで使えるinline Cっていうのが公開されてましたよね。

ささだ Ruby to Cを書いてる人たちがやってますね。江渡さんはいきなり濃いところをやってるんですね。

田中 大体、新しいものに手を出す時って、何か扱いたい時だから、そこに繋がるところにトラブルがあると手を出さざるを得なくなりますよ。で、皆が使ってないものはささださんは濃いと表現されましたけど、こなれてないってことですね (笑) だから、未知数なものに手を出さざるを得ないわけですよ。

ささだ Rubyはその頃から使われてるわけですね。Pythonは?

江渡 Pythonはフェイドアウトしてます。

ささだ なるほど。


_ささだ(Sun May 15 19:18:31 JST 2005)

 どうもありがとうございます。毎回必ず編集手伝って、ということはないので(実際、毎回動いてるのは数人)手伝っていただければいいなぁ、とは思います。

_せいごー(Mon May 16 09:45:27 JST 2005)

長いのはいいけどインデックスぐらいは打とうよ。

人物像 好きな言葉 尊敬する人 主なソフトウェア作品、著作 Ruby について 好きなメソッド、嫌いなメソッド Rubyist になったきっかけ Ruby との付き合い Ruby の好きなところ、嫌いなところ 便利な Ruby ライブラリ Ruby の習得 インターネット物理モデルと Ruby テストとアート 美しいソースコード Art と Programming

_ささだ(Mon May 16 11:27:10 JST 2005)

 ただToC を入れればいいんですかね。

_13(Fri)

簡単な調査。

require 'benchmark'
include Benchmark

MAX=2000000
def f1
  f = 0.0
  MAX.times{|i|
    f += 0.1
  }
end

def f2
  GC.disable
  f = 0.0
  MAX.times{|i|
    f += 0.1
  }
end


bm{|x|
  x.report{
    f1
  }
  GC.start
  x.report{
    f2
  }
}
      user     system      total        real
  3.344000   0.000000   3.344000 (  3.531000) # GC あり
  2.531000   0.062000   2.593000 (  3.000000) # GC なし

やっぱり、mark して sweep すると、遅いのか。

解析できるかなぁ。例のGCだったら救えたりするんだろうか。


IPAX 2005 の発表では、未踏の最終報告と同じモノでいいか、と思っていたんだが、考えてみれば客層が大分違うので、アレをやるととてもしらけるような気がしてきた。

さて、どうしたもんか・・・。


誰か、OOo においてURLを書いて勝手にハイパーリンクにされた部分を解除する方法(通常の文に戻す方法)知りませんか?

_maeda(Fri May 13 18:45:05 JST 2005)

 URLのテキストを選択しておいて『右クリック→標準』あるいは『書式メニュー→標準』。ヘルプで「オートコレクトによるURL識別オフ」のところにある。

_ささだ(Fri May 13 19:40:28 JST 2005)

 おお、全然気づきませんでした。ありがとうございます。

_12(Thu)

maid of allworks って、なんか強そうだよね(偏見)。


そういえば、OSCON はすっかり忘れていました。

今更ながら、プログラムを見てみると、IronPython のすげー長いセッションがある(O'Reilly Open Source Convention - August 1-5, 2005 - Portland, OR)。聞きたい。これはとても聞きたい orz

あれ、でもこれは開発の話じゃないのか。

OSCONって「どう使うか」ばかりなのかなぁ。まぁ、普通はそうだよな。


RHG 売り切れ(Amazon.co.jp: 本: Rubyソースコード完全解説)というのはめでたい! のだが、いつごろから売り切れていたんだろう。それが問題。増刷されるといいなぁ。


IPA に提出しなくてはいけない書類がかけない・・・。MS Word 使い方わからないし(問題はそこではないが)。


スークリとは薬やってる人だそうです。


自己紹介などを追加。

しかし、全然研究してないことが明白だな、これは・・・。


Float はごみになるから遅いので、たとえば FloatStore みたいなのを作ったら速くなったりするんだろうか? たぶんなんないんだろうなぁ。平衡木で作った Float オブジェクトは全部保存していて、同じものは再利用。

しかし、Float を利用するプログラムの中で、Float の再利用率ってどれくらいあるんだろう。キャッシュっぽく、使わない値は追い出す工夫が必要か。結構面倒そうだなぁ。


ちなみに、Python の整数オブジェクトや文字オブジェクトも同様らしいことを最近しった。面白いのね、Python。'a' is 'a' => true で、'aa' is 'aa' => false なの。文字オブジェクトは immutable だが、is で必ずしも等しくなるわけではない、と。


ruby も文字列は immutable にしてほしいなぁ・・・。


rb_float_new を作り変えてみればできないことも無いのか。実験してみるかなぁ。


キャッシュみたいなのはできないね、GC しないと・・・。やっぱ駄目か。


そういえば、今日は歯医者に行って歯に穴をあけられた。あきっぱなし。歯が死んでるって。ウワーン。

_babie(Thu May 12 20:23:53 JST 2005)

 prettymaids も一部の人達には強そうです。

_babie(Thu May 12 20:29:59 JST 2005)

そして IronPython を IronMaiden と空目。 「そうか笹田さんってクスリやってるのか...」と訝しむ目。

_ささだ(Thu May 12 20:49:21 JST 2005)

 この文脈では、やってるのは babie さんじゃ・・・。

_maeda(Fri May 13 00:24:12 JST 2005)

 MacLispはフロー解析して、可能ならスタックにFloatを割り付けてました。Fast Arithmetic in Maclisp

_11(Wed)

やっぱり NegaPosi compiler を昨日貼ったのは失敗だったか orz

しかし、ランタイム部分ももうちょっときちんとしたものを作ればよかったかなぁと後悔。ちょっと楽しすぎた感じ。


メモ http://www.meikei.or.jp/~center/


次の YARV Maniacs (やーまに)は何をネタにしようかな。命令セットかなぁ。うーん。またインタープリタとは、とかいう感じで煙に巻くか・・・。


ipsj PRO のプログラムが発表された。第54回プログラミング研究会

一日しかないのか。

_10(Tue)

激しく寝坊してしまいました orz


我が愛しき娘たちよ 読了。


2004年度未踏ソフトウェア創造事業 「未踏ユース」 開発成果が発表されますた。YARV も高い評価が得られました。皆様のお陰です。どうもありがとうございました。


うーん、るびま復活と言われても、そもそも死んでないし。このスケジュールは去年の10月頃に決まっていたもので、きちんと守れていて正直俺も驚いていたり。

ちなみに、今後の予定も決まっているけど、守れるかわからんから、秘密。

って、前も書いたかも。


NegaPosi is my new scripting language. Scripts written by NegaPosi can run on ruby interpreter.

You can convert any Ruby scripts to NegaPosi scripts using following scripts.

=begin

The NegaPosi Compiler

[Any ruby script] => [NegaPosi Script]

== Usage

  ruby np.rb [any ruby script] > [negaposi script]

You can run negaposi script with ruby interpreter.


=end

def npc prog
  puts DATA.read
  sig = '_'; i = 0; r = []
  (prog+"\0").each_byte{|b|
    8.times{|bit|
      r << ((b&(1<<(7-bit))!=0)?'+':'-')
    }
    if (i+=1) == 8
      print r.reverse; r = []; puts sig
      i=0
    end
  }
  print r.reverse; puts ' '*(8-i)*8+sig if i!=0
end

npc(ARGF.read)

__END__

class                                                  NP
def  initialize a=@p=[], b=@b=[];                      end
def +@;@b<<1;b2c end;def-@;@b<<0;b2c                   end
def  b2c;if @b.size==8;c=0;@b.each{|b|c<<=1;c|=b};send(
     'lave'.reverse,(@p.join))if c==0;@p<<c.chr;@b=[]  end
     self end end ; begin _ = NP.new                   end

Sample NegaPosi script is here:

def  initialize a=@p=[], b=@b=[];                      end
def +@;@b<<1;b2c end;def-@;@b<<0;b2c                   end
def  b2c;if @b.size==8;c=0;@b.each{|b|c<<=1;c|=b};send(
     'lave'.reverse,(@p.join))if c==0;@p<<c.chr;@b=[]  end
     self end end ; begin _ = NP.new                   end

+-+--++--+--+++-+--+-++-+-+-+++-+---+++-+-+--++--+--+++--+-+----_
+-+-+++-+-++-+---+++-++-+-+--++-----+++-++++-++-+++--+-------+--_
++--+++---+-+++-+-+-+++-----+++--+-+----+++--+--+--+-++--+--+++-_
---+-++-+++--+-----+-+---+++-++-+-+--++-----+++-++++-++------+--_
--+-+++-+----++-++++-+--++++-+---+-+++------+++---+-+++---+-+++-_
++++-+----+-+++-+-+--++--+++-++--+++-+----+-+++-++++-++---+--++-_
-++--++------+----+++++--++--++---+++++-++-++++-+--+-+--+++--+--_
-+-+-----+-+----+-+++++---+--++-+----++-+-+--++--+--+++--+++-+--_
--------                                                        _

Above sample program access http://www.atdot.net and get http response and put it.

(This program was written for IORCC, but I couldn't get any prise :-P)


ヤングフランケンシュタインを見る。特典映像までは見ない。

_ogino.(Tue May 10 18:29:49 JST 2005)

 おおお、スーパークリエータ!

_arton(Tue May 10 21:14:24 JST 2005)

 かっこいいなぁ。

_なかだ(Tue May 10 21:15:48 JST 2005)

 すげー。

_ささだ(Tue May 10 21:37:14 JST 2005)

 NegaPosi 凄いでしょう。(あれ)

_nobsun(Tue May 10 22:20:42 JST 2005)

 となりのうちに塀ができたんだってね。カッコイィー、更ナルカツヤクヲ!

_KM(Tue May 10 23:21:31 JST 2005)

 おめでとう

_坊主(Fri May 13 11:31:02 JST 2005)

 初めて書きます、ITSのときお世話になったものです。この度はおめでとうございますm(_^_)m

_9(Mon)

ひぐらしがなき終わったとおもったら終わってなかった。なんてこった。しょんぼり。


なんか認定証というのをもらったんだけど、これをどうしろと...。


Rubyist Magazine 0006号 をリリースしました。

お楽しみください。


しかし、毎回リリース時にごたごたするな。いやー、編集、著者の方々に感謝感謝です。今回もどうもありがとうございました。

_ (Mon May 09 16:27:41 JST 2005)

 とりあえずヤフオク? >>認定証

_ささだ(Mon May 09 17:38:38 JST 2005)

 それはまずそうだなぁ・・・。というか、売れなさげ。

_8(Sun)

眠い。


府中 -> 前橋 -> 四谷 -> 府中。


python のことがいろいろわかった。でも、zope のことはさっぱりだ。

_7(Sat)

では合宿。

_6(Fri)

ひぐらしのなく GW。

先生に爆笑。


うぅ、きつい。


いろいろとご迷惑おかけします.


わーい,rudy -> ruby


うーむ,犬好きと猫好き,比べてみると面白い(犬好き?猫好き?

_5(Thu)

http://dev.ariel-networks.com/modules/xfsection/article.php?articleid=12

どっかで見たことがあるような話ですね。


昨日は新宿まで行って中華。

秋葉原行って、はじめてパーツを買う。工作用。

新宿に戻ってケーキ。

で、爆睡。

_maeda(Fri May 06 00:57:48 JST 2005)

 俺も今日は秋葉原をウロウロしてたよ。奇遇だね。

_c0zydoll(Fri May 06 04:13:04 JST 2005)

 私は2日。最近あまり行く機会がなかったのですが、たまに行くと色々面白いですね。

_4(Wed)

http://www.geocities.jp/dondokodon41412002/index.html

うわーん。


今日、さようなら、ギャングたちを読み始めたんだけれど、何がなんだかさっぱりわからない。海外SFの翻訳より読みやすいんだけど、意味がさっぱりわからん。


我が愛しき娘たちよでは、ルビーが出てきた。


夜中、歯が痛くて眠れなくなる。

朝まで待って、休日診療に行く。痛み止めをもらう。1510円。さすがに休日は高い。

_3(Tue)

Rudy ってなんだ orz


YARV 触りたかったんだけどなぁ。全然触っていない。


池上さんがいらっしゃったので、ついつい飲み会にしゃしゃり出てしまいました。面子というか、集まりが集まりなだけに、難しい話ばかり。馬鹿ですみません。

_ogino.(Tue May 03 00:40:20 JST 2005)

 Rucker?

_2(Mon)

池田さん起業おめでとう会。これからもよろしくお願いいたします。


  • あなたは虚人と星に舞う
  • よくわかる現代魔法 3,4

読了。

前者、続き出ないのかなぁ。

後者、引っ張りすぎ、意味不明。とりあえず jini はわかったのでよしとするか。


るびまの編集...。


やっぱり5時間弱のインタビューってのはありえなかった orz


IPA X 2005 出展者プレゼンテーション。詳細なプログラムが発表された。うちのボスと発表時間が近い。

_c0zydoll(Fri May 06 04:09:35 JST 2005)

 ありがとうございました。こちらこそ、

_1(Sun)

るびまの6号の準備。むー・・・。GW はこれで終わるかも。


るびま6号の準備、思ったよりも全然アレだった・・・orz。

ドウシヨウ・・・。

_sheepman(Sun May 01 11:42:43 JST 2005)

 http://yarv.rubyforge.org/pukiwiki/pukiwiki.php が止まってます。

_ささだ(Sun May 01 14:14:18 JST 2005)

 今問い合わせてまーす。

Sasada Koichi / sasada@namikilab.tuat.ac.jp
$Date: 2003/04/28 10:27:51 $