トップ 最新 追記

日々の流転


2004-01-02 [長年日記]

λ. あけましておめでとうございます。

本年も是非よろしくお願いします。

最近更新が滞ってましたが、ぼちぼち再開してきます。

λ. 初詣

成田山, 金龍山浅草寺, 柴又帝釈天へツアーで行ってきた。えっ? 全部お寺なのに何が初詣だって? ノン、ノン、ノン、モナミ。成田山には巫女さんがいたのですよ。どう見てもバイトの人とはいえ、巫女さんがいるのだから、初詣で全然問題ないのですよ。ええ!! (以下略)

……とりあえず神仏習合バンザイって事で。

λ. newtype/datatype (was efficiency)

そうか、単純に pointed CPO だけじゃだめなのか。なるほどねぇ。Haskellのデータ型の意味についてちょっとナイーブに考えすぎてたな。それから、「undefined :: a->b」と「λx.undefined :: a->b」が異なっているという話で、Topology via Logic に以下のように書かれていたのを思い出した。

However, we get something more interesting if we try to solve

  D = [D→D]

This has been studied by Abramsky [87,90], and also, following him, by Ong [88], in connection with the lazy λ-calculus. The effect of the lifting is to make a distinction between ⊥, a completely divergent object, and λx.⊥, which is known to be a function but which diverges whenever it is applied to an argument.
Computationally, this corresponds to not trying to evaluate a function beyond the λ until application time, and is the way things are generally done in practice.


  • S.ABRAMSKY
    • [87] Domain Theory and the Logic of Observable Properties, PhD Thesis, Queen Mary College, University of London, 1987.
    • [90] "A domain equation for bisimulation", Information and Computation, 1990.
  • C-H L. ONG
    • [88] The Lazy λ-Calculus: An Investigation into the Foundations of Functional Programming, PhD Thesis, Imperial College, University of London, 1988.

ちょっとこれらの論文を読んでみたくなった。『A domain equation for bisimulation』はPSファイルが見つかったのでまずこれを読んでみよっかな。

関連エントリ
Tags: haskell

λ. 小泉首相の靖国神社参拝

少し前に『「いつ参拝しても批判されるなら、公約通りに断行した方が潔い」(首相周辺)との判断に傾きつつある』という記事を読んで、今年は終戦記念日に参拝してくれるんだろうと期待してたので、元旦の参拝にはビックリした。元旦に参拝するのも悪くはないと思うけど、年一回参拝という公約を考えると、今年も終戦記念日には参拝しないんだろうなぁ。はぁ(ため息)

Tags: 時事
本日のツッコミ(全10件) [ツッコミを入れる]

ψ はら [成田山私も。つーか地元なんです。成田山の集金力はすごい。]

ψ とおやま [参拝するんじゃない? 今回のは初詣なんでしょ? 慰霊者参拝は別とか言うと思う。]

ψ さかい [成田山もどこも無茶苦茶混んでたので驚きました。 正月とはいえ、これほどとは…… ところで、去年はRHG読書会などで..]

ψ はら [是非!]

ψ なかだ [はらさんに全部!]

ψ はら [わけわからない、、、一発逆転ねらい?]

ψ さかい [???]

ψ ささだ [一発逆転だったらはらさんじゃまずいんじゃないのでしょうか]

ψ takot [三択の女王竹下さんで.]

ψ はら [そうかあ「手堅くはらさんに全部」が正解かあ。]


2004-01-05 [長年日記]

λ. 明後日から学校なので朝無理やり起きたのだけど、眠すぎて何もする気が起きない。それに明後日から学校だと思うと少々気がめいる。欝だ。それから、年が明けて初めて自転車でちょっと出かけたのだけど、冷えるなぁ(「流石だな、黒幕者」)。その後昼寝。起きたらもう夕方だよ。それから名探偵コナンのスペシャルを見たり。それにしても明後日から学校かぁ……

λ. 借りた本

小説すばる 2003年5月号
-
『二つの約束』
ダニエル・スティール (Danielle Steel) [著], 天馬 龍行 [訳]
『ODAの正しい見方』
草野 厚 [著]
『金持ち父さんの投資ガイド入門編』
ロバート・キヨサキ(Robert Kiyosak), シャロン・レクター(Sharon Lechter) [著] 白根 美保子, 林 康史, 今尾 金久 [訳]

そういえば、草野先生の本は『日米オレンジ交渉—経済摩擦をみる新しい視点』を以前にパラパラと見たことがある程度だし、授業を取ったこともないんだよなぁ。せっかくSFCにいるのに勿体無いかな。

Tags:

λ. Re: ヘルシング

内容もどう考えても規制の少ない日本国内だからこそ出版できたというか。カトリックとプロテスタントの宗教戦争とかナチスとかね〜。

そういえば、「ソフィア先生の逆転裁判2 part4 〜ユダヤの嘘を暴いてドイツの無罪を勝ち取れ〜」というページでドイツのオタク事情が取り上げられているのですが、ヘルシングについて日本人が思っているような特別な反応はなく、普通のアニメとして認知されているようである と書かれてました。アニメ版にはナチスは出てこないし、このページを信用してよいかわからないけど、とりあえず参考までに。



2004-01-08 [長年日記]

λ. 人工無能「久脳」

「久脳」という名前には萌えが欠けている(?)ので「メカおにぃちゃん」という名前を提案したいと思います。……というのはさておき、どんな感じになるかちょっと試してみようと思い、kn君とのメッセンジャーのログを 人工無脳エンジン Ghoti に突っ込んでみた。すると、考えてみれば当然なのだけど、kn君の喋り方だけでなく、僕の喋り方まで学習されてしまった。これは今回の目的には都合が悪いけど、これを避けるためには学習アルゴリズムに本質的な変更は必要ない……といいなぁ。そういえば、学習問題として考えると、無脳の学習は通常は正例のみからの学習で、負例は無いんだよね。

あと、人工無能の分野では、言語に関する理論、たとえば状況意味論(Situation Semantics)や談話表示理論(DRT, Discourse Representation Theory)や動的意味論(Dynamic Semantics)といった理論はどれくらい使われているのだろう?

λ. Citrus iconv の実装

BSDCon.jp の 「Citrus iconv の実装」原稿 (PDF) プレゼン資料 (HTML) を読んだ。

Tags: 論文

λ. 東方診断

をやってみた。パチュリー度って何やねん! (笑) 「知識だけでなく、実行しましょう」というのは耳が痛い。

<シークレット>
パチュリー度=ノーレッジ級です。
知識だけでなく、実行しましょう。

酒井さんのポイントは以下の通りです。
努力度 22500桜点
魅力度 20000桜点
妖怪度 32500桜点
弾幕度 27500桜点
春度 15000桜点

強みは妖怪度、苦手なのは春度です。

酒井さんは妖怪です。

酒井さんの才能は普通です。
普通が一番。

酒井さんは地味です。

λ. 買った本

「東方香霖堂」キター

Tags:

2004-01-09 [長年日記]

λ. MSにいるHaskellの大物

http://blogs.gotdotnet.com/emeijer/
 
MSにHaskellの大物がいたとは知りませんでした。

Erik Meijer も有名ですが、MSにいるHaskellの大物といえば、まず Simon Peyton Jones でしょう。

Tags: haskell

λ. 研究(?)

昨日、ベットに入ってウトウトとしてたときに、いいアイディアを閃いて面倒な問題が解決したような気がしていたのだけど、今朝目が覚めたら全然そんなことはなくて、ちょっとガッカリ。でもまぁ問題を整理するのには多少役にたったので、よしとするか……

本日のツッコミ(全1件) [ツッコミを入れる]

ψ さかい [ツッコミのテスト]


2004-01-10 [長年日記]

λ. http://xmlns.com/wot/0.1/pubkeyAddress

ちょっと現実逃避に自分のFOAFファイルを弄っていたのだけど、WOTボキャブラリのpubkeyAddressの定義って分かり難いよなぁと思った。

  • コメントの"present document"って最初はdomainのリソースのことかと思ったのだけど、どうやらwot:pubkeyAddressの使われたRDFファイルの事らしい。そんなのアリかよ!? (T_T)
  • それから、domainの方は実際にはwot:PubKeyのようだけど、それなら最初からResourceではなくwot:PubKeyと書いておいて欲しいものだ。
<rdf:Property rdf:about="http://xmlns.com/wot/0.1/pubkeyAddress" 
  rdfs:label="public key address" 
  rdfs:comment="The location of the public key used to sign the present document" >
  <rdfs:domain rdf:resource="http://www.w3.org/2000/01/rdf-schema#Resource" />
  <rdfs:range rdf:resource="http://www.w3.org/2000/01/rdf-schema#Resource" />
</rdf:Property>

λ. "The Haskell Road to Logic, Math and Programming" by Kees Doets and Jan van Eijck

メモ。なかなか面白そう。ドラフトが公開されている。

The Haskell Road To Logic, Maths And Programming (Texts in Computing)(Kees Doets/Jan van Eijck)

Tags: haskell

λ. クイズダービー

遠山さんに教えてもらって、ようやく2日の日記のツッコミの元ネタを理解する。一番年代が近いはずのささださんが知っているのに、これまで知らなかったのがなんだか悔しい。

本日のツッコミ(全1件) [ツッコミを入れる]

ψ はら [ネタは分かってもなかだ氏の意図不明のままね。しかし当時からはらさんは鬱だったなあ。]


2004-01-11 [長年日記]

λ. 携帯電話の現状に関するアンケート

友だちの久野君がアンケートをしてます。卒論の一部に使うそうなので、よかったら協力してあげて下さい。

λ. バカが征く (2004-01-11) より

http://osnews.com/story.php?news_id=5602&page=3

例によって本文は読んでいませんけど、数値だけを比べれば、Javaが遅いとい うのはもはや都市伝説ですね。trigって何かと思ったら三角関数のことのよう です。そんなもん使いませんから。

これは非常に明るいニュースですよね。まともなベンチだとしたら、もはやGC は全然問題にならないという1つの傍証でしょう。

I/O を除く4つのベンチマークは、 Javaだとすべてプリミティブ型の演算なので、 GCはほとんど関係ないでしょう。

Pythonが遅いのはJITがないからでしょうか。確か仮想機械使ってるんですよ ね。やっぱり単純に仮想機械にしただけじゃダメってことでしょうか。

Python/Psycoは一応JITですよ。想像ですがPythonが遅いのは、数がboxed representation で扱われてしまっているせいという部分も結構あるのではないかと思います。

それはそうと、この結果は gcc の三角関数が異様に遅かったりして納得いかなかったので、自分でも同じベンチマークをLinux上で実行してみました。ついでにRubyも加えてみました。後でYARVも試します。

int mathlong mathdouble mathtrig mathI/OTOTAL
gcc 3.3.2 8.1 20.0 7.8 3.51.1 40.4
Java 1.4.1 13.5 29.6 14.7 71.13.2 132.1
Python 2.3.2 + Psyco 1.1.1 20.4 549.5 84.2 13.82.7 670.1
Python 2.3.2 381.0 866.2 525.4508.73.21826.8
Ruby 1.8.11079.73710.3 948.1 39.66.05783.8
本日のツッコミ(全3件) [ツッコミを入れる]

ψ ささだ [YARVでも多分全然速くないので、rubyのプログラム晒してもらえませんか。それに絞った最適化を考えてみます。]

ψ さかい [了解。こんな感じです。 http://www.tom.sfc.keio.ac.jp/~sakai/d/data/20..]

ψ ささだ [うわあ、なんか凄いのがキター。まず動かせるよう努力します・・・。]


2004-01-12 [長年日記]

λ. FOAF Walker

山けんさんという方の作った FOAF Walker というツールで自分や他人のFOAFファイルを眺めて遊んでみる。FOAF Walker はちょっと癖があるけど、なかなか楽しいツールだと思う。

自分を中心とする100ノードほどを表示してみると、自分の周りが疎なのがちょっと面白くない。みんなFOAFしようよ〜 (笑)

本日のツッコミ(全3件) [ツッコミを入れる]

ψ やいざわ@清木研 [一応 FOAF やってますだ. # 人脈が謎な内容なのが問題.]

ψ さかい [僕のFOAFにやいざわさんを追加しときました。 > # 人脈が謎な内容なのが問題. 人脈を辿っていって意外な人物..]

ψ やいざわ@清木研 [むしろ清木研なのに,foaf:knows に萩野研と村井研の人しかいないのが謎なだったり・・・.]


2004-01-14 [長年日記]

λ. YARV + Ruby/TCC

YARVの出力したバイトコードを、実行時にC言語に落としてRuby/TCCでコンパイルしてみる(そのためのパッチ)。でも、そしたらかえって遅くなってしまった (T_T)

青木さんの「これを使ってJITコンパイラ作れるかな」というツッコミを見てから、実行時にrb_eval()を部分計算してRuby/TCCでコンパイルというのをずっと考えてたのだけど、rb_eval()がでか過ぎてこれは挫折してたのでした。YARVはまだ小さいので簡単に試せて楽しかった。

Tags: ruby
本日のツッコミ(全9件) [ツッコミを入れる]

ψ ささだ [んーと、そのために命令と独立にしてるんで、結構いけそうな気がしなくも無いが。(しかし、いきなり大技だ)]

ψ さかい [tccではなくgccを使ったら、ちゃんと速くなりました (^^; どうやら、遅くなってしまっていた原因は、コンパイラ..]

ψ ささだ [- 速くなったのはどれくらい? - スタック操作、どうやってんのかよくわかんないんだけど - 変換後のソースぷりーず..]

ψ さかい [> - 速くなったのはどれくらい? 実行時間(コンパイル時間を除く)を見ると、大体20%くらい速くなってます。 ..]

ψ ささだ [ああ、なんてこった。PUSH は insns2vm.rb で加えちゃってんのか(もう覚えていない)。だめだこりゃ。 ..]

ψ さかい [> スタック操作を消せば、倍にはなりそうだな。 そうですね。私も本当はそこまでやりたかったのですが、学期末で時間が..]

ψ ささだ [100倍になりますた.]

ψ さかい [さっすがぁ! P.S. 今度のRHG読書会の時にでもYARVの事を色々と訊こうと思ってたのですが、私はちょっと都合..]

ψ ささだ [なんてこった.私も色々と聞こうと思ってたのに.sfc まで行こうかなぁ(何しに).]



2004-01-20 [長年日記]

λ. YARVでの末尾再帰

YARVにsendとendを融合した新しい命令(tailsend)を導入することで、スタックを消費しない末尾呼び出しを実現してみる(yarv000c-tail.diff)。ただし、クロージャのこととかは全然考えてない。

それと、余計なスタック操作が加わるので当然遅くなるはず。簡単なプログラムで試してみると1.7%ほど遅くなった。場合によってはもっと遅くなることも考えられるけど、これくらいならなんとか許容範囲?

インタプリタ 実行時間(秒)
ruby 47.14
yarv 10.18
yarv(tailsend)10.35

評価プログラム:

def test(n)
  if 0==n
    0
  else
    test(n-1)
  end
end
 
i = 0
while i < 10000
  test(1000)
  i += 1
end
Tags: ruby
本日のツッコミ(全2件) [ツッコミを入れる]

ψ ささだ [楽しそうだなぁ・・・。]

ψ さかい [何他人事みたいな事言ってるんですか (^^; でも、ホント楽しいです。 これまで自分でも弄れるような手頃なVMって..]


2004-01-21 [長年日記]

λ. ようやく一息つける。あともうひと踏ん張りか。

λ. 「Windows Services for UNIX」v3.5 日本語版を無償公開

えとせとら(2004-01-21)より。早速インストール。これでCygwinを捨てられるといいなぁ……

λ. YAMLとかN-TriplesとかN3とか

XML : YAML」という関係と、「RDF/XML : RDF/N-Triples」「RDF/XML : RDF/N3」という関係には類似点はあるか?

λ. Java Curses Library (JCurses)

The Java Curses Library is a library, that makes is possible to create text based terminal applications with Java programming language, like curses under Unix. For this purpose a windowing toolkit is implemented, that, like AWT, consists of many classes for text based windows and GUI elements, that are layouted within these windows. An application,that bases on the library, creates one or more of this windows and reacts on events coming by user interactions with GUI elements.

某氏に「topみたいな表示をJavaでする方法はないですか?」と訊かれたので、ググったらこんなものを見つけた。


2004-01-22 [長年日記]

λ. MSN Messenger contact list to FOAF conversion

こないだ萩野研の誰かが「MSNメッセンジャのコンタクトリストあたりからFOAFを生成するのが良いのでは?」といっていたのを思い出し、簡単なスクリプト(msnmsgr2foaf.rb)を書いてみた。 サインインしている状態で実行すると標準出力にFOAFを出力する。まだ、作りこんではいないけど、雛形を作るくらいには使えるだろう。

が、その後ググってみたら [rdfweb-dev] MSN contact list to FOAF conversion というメールを見つけ、例によって同じ目的のツールがすでにあったと知る。

λ. SFU 3.5 で ruby をコンパイルしてる人の数 → (5)

というわけでコンパイルしてみる。

Tags: ruby

λ. Re: 街で見かけた数学用語

so1さんは とてもとても手が出せない遠い存在 といいますが、toposの概念自体はそんなに難しくないですよ。toposの定義はさておき、部分集合の概念を圏論の言葉で一般化したのがsubobjectですし、集合Xの部分集合Sに対応する特性関数 φS: X→{true,false} で、Sを部分集合からsubobjectに一般化するために、集合{true,false}を一般化したのがsubobject classifier (truth-value object) Ω です。
論理との関係にしたって、任意の集合が(部分集合を命題、集合演算子を論理演算子 として)古典命題論理のモデルになっているのと同様に、toposのobjectは直観主義命題論理のモデルになっている、というのが最初の話だったと思います。

もちろん、私の知識なんて微々たる物なので、 この先に奥深い話がきっと沢山あるんでしょうけどね。

ところで、Topos Theory in a Nutshellなんかにも書かれてますが、William Lawvere and Steve Schanuel, Conceptual Mathematics: A First Introduction to Categories, Cambridge U. Press, Cambridge, 1997. のtoposの入門はとても分かりやすかったです。それから、同じページで知ったのですが、Michael Barr と Charles Wells の Toposes, Triples and Theories ってオンラインで公開されているんですね。

Tags: 圏論
本日のツッコミ(全2件) [ツッコミを入れる]

ψ ふみ [MessengerなどのコンタクトリストからFOAF作るってのはおもしろいと思うけど,これは公開したくない類の情報だ..]

ψ さかい [確かにそうかも。 ちなみに、グループ単位でエキスポートするか否かを決定できるようにするとか、出力する情報をもう少し..]


2004-01-23 [長年日記]

λ. Object-Oriented Dynamic Languages

This course covers language design principles and implementation techniques for advanced object-oriented dynamic languages (OODL). OODL's address the increasing demands for quick time to market by attempting to narrow the gap between conception and realization through a higher level of abstraction, clean semantics, automatic memory management, incremental development, and reflection. We will cover a series of compiler and runtime implementation techniques which permit the efficient delivery of these language / development environment features.

メモ。

λ. Re: 人工無脳エンジンGhoti

ところでヒビルテさんのところで出されている疑問なんですが;

人工無能の分野では、言語に関する理論、たとえば状況意味論(Situation Semantics)や談話表示理論(DRT, Discourse Representation Theory)や動的意味論(Dynamic Semantics)といった理論はどれくらい使われているのだろう?

・・・すいません。わかりません。無脳ですし。

私が取り上げた理論は形式意味論(formal semantics)という、論理学と非常に近い分野の理論です。実のところ、私はこの中のどの理論についてもあまり詳しいことは知らないのですが、モンタギュー意味論の時代に比べれば、チャットのような談話の意味を扱うための理論的な基盤は随分整備されているという印象を受けます。ですから、人工無脳でもひょっとしたら(何らかの意味論を用いて)少しは意味も扱っているかも知れない、あるいはそういう人口無脳もあるかも知れないと思ったのです。ですけど、svnseedsさんの話を読んでいると、どうやら現在主流の人口無脳では意味は本当に一切扱っていなくて、syntaxと確率モデルだけから会話を行っているみたいですね。

λ. msnm.rb

msnm.rb という MSN Messenger プロトコルを扱うライブラリを知った。サイトはhttp://www.ghostop.com/msnm.rb/ なのだけど繋がらないので、msnmnmz.rbのサイトからダウンロードしてくる。で、早速ボットを作るべく試してみたのだけど、うまくいかない。やり取りを見ると「VER 1 MSNP2」に対して「VER 1 0」が返ってきている。MSNP2はもうサポートされていないのかな。しょぼーん。

Tags: ruby
本日のツッコミ(全6件) [ツッコミを入れる]

ψ あるふぁ [状況意味論や動的意味論は「そもそも状況とはどのように会話に関係するのか?(状況 A と状況 B の移り変わりはどうや..]

ψ せざーる [はじめまして。 たしかMSNP8未満はセキュリティの向上という名目でサポートしなくなったはずです。 まだ試してはいな..]

ψ さかい [あるふぁさん、お久しぶりです。 動的意味論は状況意味論以上に知らないので、とりあえず状況意味論の場合についてコメント..]

ψ さかい [はじめましてセザールさん。情報ありがとうございます。 早速msnlibを試してみたのですが、そのままだとログイン出..]

ψ 石橋秀仁 [msnlibというものがあるのですね。 msnm.rbは動作するように直しました。 http://zerobase...]

ψ さかい [おおっ。素晴らしい。 久しぶりにボット作りに挑戦してみよっかなぁ。]


2004-01-27 [長年日記]

λ. 土曜から風邪ひいてました。まだ少しダルイっす。

λ. 博麗神社 例大祭

キター!!

Tags: 東方

λ. javascript初心者

rubyで書いた

require 'win32ole'
messenger = WIN32OLE.new('Messenger.UIAutomation.1')
contacts = messenger.MyContacts
nick = messenger.MyFriendlyName

は動くのに、javascriptで書いた

var messenger = new ActiveXObject('Messenger.UIAutomation.1');
var contacts = messenger.MyContacts;
var nick = messenger.MyFriendlyName;

はMyFriendlyNameのところで「このオブジェクトではサポートされていない操作です」となる。なんでだろぅ〜!?

Tags: javascript

λ. 『声に出して読めないネット掲示板』, 荷宮 和子

某氏の机の上にあったのでパラパラめくってみたのだけど、なんつーか、イタイな。こんなイタイ本を見るのは久しぶり。

Tags:
本日のツッコミ(全2件) [ツッコミを入れる]

ψ たむら [messenger.['MyFriendlyName']; にしてみるとか、 # znzさんもツッコんでたけど、JS..]

ψ さかい [試してみたところ、messenger.['MyFriendlyName']; だと「識別子がありません」というエラー..]


2004-01-28 [長年日記]

λ. 「NPOと社会経済」テスト

用語の意味を説明せよという問題で「イギリスの Age ConcernAnchor Trust」が答えられなかった。ちょっと悔しい。

λ. Detours: Binary Interception of Win32 Functions

を読んだ。Detoursを使うと以下のようなことが出来る。素直に面白かった。

  • 実行時に関数のイメージを書き換えることで、その関数の呼び出しを横取り出来る。また、元のコードもトランポリン経由で呼べる。
  • 実行ファイルにデータセグメント(payload)を追加したり、インポートテーブルを変更したりできる。
  • 既存のプロセスや新しいプロセスにDLLをロードさせられる。
Tags: 論文

λ. 知人関係を用いたプライバシ保護型マッチングシステムの研究

知人ネットワークを用いた人材マッチングシステムの研究をしています。
FOAFとか、Friendsterとか、そこらへんの話題に近いですね。
コミュニティウェアとか人工知能学会とかで扱うテーマなのですが、村井研らしく
インターネット志向、ディプロイメント志向を前面に押し出しています。

ゆーすけべー日記 (2004-01-20)より。あー、これか、こないだ片山さんが言っていたのは。