[アート] bitforms

formsはformsでも・・・


[AWK] GAWK3.1.4のマルチバイト化

GAWKが更新日記 GAWK-3.1.0 on Cygwinに書いたようにインターネット対応(TCP/IP Internetworking With `gawk')になり、マルチバイト化が待たれていたが、いよいよ本格的に進み始めた。Bruce.さん(スクリプティング言語資料室(仮))がバグフィックスを進め、TSNETやホームページでWindows用のバイナリを発表され始めている。最新版は次のファイル。SJIS文字コードのパターンマッチングが可能。lengthやindexはバイト単位ではなく、文字単位でカウントする。


[Computing] トラックバック

Blogの機能にトラックバック(trackback)がある。これは、私が言っていた日記間相互作用のようなものだけど、Webサーバー間であればシステム化可能ということだ。Fe2+さんとこのlowlife.jpを調べていて、ドキュメント翻訳のリンクから、トラックバックについて次のリンクを調べると面白そうなことがわかった。Standalone TrackBackは、PerlのCGIで実現されている。


PyDS/PyCSは興味深いシステムである。


[Computing] FirefoxとIEの違い

この二月の更新日記はしばらくFirefoxではタイトルが表示されなかったはずである。今日久しぶりにFirefoxで動かすと、慌てた。スタイルシートの部分をチェックすると、

.emph{font-size:12pt;color:#ffffff;background:6699CC;font-weight:bold}

となっている。background:のあとの色指定に'#'が抜けている。IEではそれでも問題なく表示されるのだが、FFはダメというわけ。文法チェックはキチンとしてもらいたい。が、現実問題として、主要ブラウザでのチェックが必要ということになる。ついでに、これまで経験した違いをリストアップしておこう。


[Computing] bloggingの世界との接点

ココログのようなbloggingサービスを使えば、それなりのことはできるわけだけど、サービスの範囲内のことしかできないのでおもしろくないという感じがする。blosxomをインストールしてデスクトップで動かし始めたけど、pluginsの数に圧倒されてしまって、calendarとwikieditshを動かしたところで、誰かキットみたいなのを作っているのじゃないと探し始めた。blosxom starter kitがあった。さて、Linuxマシンにインストールするかな。固定IPアドレスに設定しているから、テストに使えるだろう。


サーバーは公開できる環境にないので、結局、ココログのサービスを介して何か考えざるを得ないのかもしれない。

[Computing] グラフ理論入門

今日は、昨晩未来堂になかった新潮を探しに昼からTSUTAYAまで散歩、やはり無いので、フタバ図書のGIGA宇品店まで足を延ばすことにする。御幸ジャスコの北側の道を歩いて西に向かって、さらに南に下る。カルビーの工場と宇品西公園の間の通りを、再度西へとくねくねと近づいていく。もう一度南に下って、広島市郷土資料館の通りを西に出るとデオデオの宇品店の近くに出る。ここをさらに南に少し下る。帰りの時間を測定すると、家から20分ぐらい。1.2-1.4km程度だろう。残念ながら、目的の本はなかった。

Cマガ2月号の特集2は「グラフ理論入門」で、丁寧に説明がしてあるし、Cのライブラリソースが載っている。複雑ネットワークの自己相似性の話で、Small Worldとかの話が出てきたが、数学的にはグラフ理論を使うはずと思って購入することにした。

下記のリンクの記事はおもしろい。「WWWの直径はいくらか?」という話から書き出されている。「7,927マイルではない。19である。19という直径は地理学的な距離ではなくて、グラフ理論という数学の一分野から出てくる概念である。」ランダムに選ぶ二つのWebページの間にいくつのリンクがあるのかという距離を表している。8億ページもあるWebページ(2000年に書かれた文献である)のうちの二つのページは平均すると19回のクリックでつながる。これがSmall Worldという所以である。


Cマガ来月号はLooking Glassを取り上げるらしい。

[Computing] Looking Glass 3D

イオンの買い物の待ち時間に、未来堂へ。Cマガ3月号をチェック。予告どおり、Looking Glass 3DのLinuxへのインストールが特集されている。グラフィックスボードは選ぶらしいけど、動かすことができるらしい。Linux専用にギガマシンが使えるようになれば、試してみてもよいかもしれないが、と購入はパス(^^;)ウロウログルグルと店内を二三周して何も買わずに出る。見るべきものはなにもない。


GCCLinuxはJava Desktop System(JDS)とLooking Glass 3Dを非公式にサポートするLinuxと位置づけ、JDSこそが、Windowsと初めて競争できるデスクトップであるという認識を持っている。今後の展開に注目したい。

[Computing] Free Software Magazine

本格的な雑誌だ。76ページもあるとPDFで読むのは難しいだろう。自宅でフルカラーで印刷するのにはコストが掛かりすぎる。購入するのがベストということになるが、海外の購読者の場合は、11.95$だ。少し高い。


[Computing] 階層型データの表示

ユニマガ3月号の「インターフェースの街角」は「ファイルシステムによる階層型データの管理」という記事だった。ファイルシステムのような階層型データは、PerlではTk::Treeモジュールを使えば表示可能だ。

jpg/tk_tree.jpgTk::Treeモジュールによるディレクトリ表示 (須栗歩人著、「入門Perl/Tk」、秀和システム、2000年にあるtree.pl)

階層型データでGoogleを検索してみると、データ宝石箱:大規模階層型データのグラフィックスショーケースがトップに出てきた。大量の階層型データをツリー上に収納すると全体を見通すことが出来ない。できるだけ多くのデータを画面上に表示する方法の提案である。大変おもしろいが、結局、大量のデータを一覧するように表示することは不可能である。様々な表示手法についてリストアップしておこう。


データ構造が表示できたとしても、データが大量であればあるほど、どこに何があるのかはわからなくなる。どこを見てよいかわからなくなる。情報の表示は絞り込まなくては有効でない。詳細に見ることができるのは数件なのである。

[Computing] 仮想マシン

VMwareに触らなくなって久しいが、新しい仮想マシンの登場。何に使うのかが問題。


[Computing] なでしこ?

たまたま見つけたなでしこ~日本語プログラム言語「なでしこ」公式ページ。Perl互換の正規表現のパターンマッチングが使える。試してみてもよいかも。

[Computing] WACOM FAVO F-630EX

なぜか、絵を描きたくなって、ペンテルのAQUASHという水彩色鉛筆みたいなのとスケッチブックを買った。しかし、コンピュータへの取り込みがスキャナを搭載しているマシンの調子が悪くてできない。結局、前から欲しいなと思っていたWACOMのFAVOを買ってしまった。しかし、使いこなしは予想していたとおり大変難しい。もともと下手だっていう噂も出ているが(^^;)


jpg/CA240103_s.JPGWACOM FAVO F630EX

png/momo_s.png桃の花のつもり(^^;) (水彩LITE)

jpg/momo_c_p_s.JPG桃の花のつもりⅡ(^^;) (Painter Classic)

[Computing] 生活の中のコンピューティング

本サイトではスクリプト言語の活用を中心に様々な話題を取り扱う。スクリプト言語はPC上で動作するので、当然PCは重要なツールである。PCの感覚器官に相当する入力インターフェースにも関心がある。キーボード・マウスは当然として、インターネットからの入力を司るブラウザやスクリプト、携帯電話をつなぐUSB卓上ホルダ、今回導入したペンタブレット。PCを思考のツールとするために次は何をつなぐか。

入力を収集し、編集加工し、融合し、一つの作品を作り上げて出力する。そんなヒントがありそうな記事。


[Computing] スキャナの引越し

ハードディスクが一杯で調子の悪い古い初代Dellマシン(DIMENSION XPS H266)に接続していたEPSON GT-5500WINSを手近で使おうと、引越しをすることにした。スキャナはSCSI接続なので、SCSIボードも一緒に引越しする必要がある。最新の3号機(Dimension 4700C)はPCI Express(1レーンと16レーンの組み合わせ)になっているので、見た感じ、古いPCIボードはまったく入りそうもない。一つポートが空いているDell二号機に移すことにする。解体しにくい初代機をなんとかばらして、ようやくボードを取り出す。二号機は簡単に開くことができる。ボードのセットアップも簡単だ。最近のマシンは扱いやすくできている。コード類を接続すれば、ハードウェアのセットアップは終了。

jpg/CA240108_s.jpgDell二号機(DIMENSION 4300S)を開いてSCSIボード(手前右下)をセットアップ完了したところ

心配なのはドライバとソフトウェアがXPで動くかどうかだ。ドライバはインストールも何もしなくても問題なかった。読んde!ココをインストールするとスキャナの選択で、EPSON GT-5500が出てくる。EPSON Scan!Ⅱ32はEPSONのサイトからGT-5500用をダウンロードしてインストール。問題なく動く。トラブルのない引越しだった。


[Computing] 知への道具

マイクロプロセッサは人類に与えられた「知への道具」である。1990年代は道具を完成する時期であり、21世紀は道具を使いこなして花咲かせる時代となる。』いい言葉だねえ。正に、この道具を使いこなさねば・・・


[日記] 雪の一日

寒波襲来。-30℃の寒気団が下りてきた。本格的に雪が降った。今朝は雪は積もっていたが、日が射しているし、なんとか車で出れるかなと思いながら支度をしていたが、西の空が煙っている。雪だろう。これは車で出るのはリスクが高いと、JRに変更、バスに乗った。14分で広島駅着。発着ボード見ると、20分程度の遅れが出ているようなので、しばらく待ちかなと思っていると、2番線にすーっと岩国行きが入ってくる。あわてて陸橋を駆け上がって移動。列車は空いていてゆっくり座れる。本を読みながらの通勤も悪くないなと思う。

日中はずーっと雪が降り続いたし、夜は寒くなりそう、歩きもあるのでさっさと定時で帰宅。広島駅では市内電車にうまく乗り継ぎ、ラッキーと思いながらデニス関氏の例の論文を読み耽る。広大付属学校前で降りて、TSUTAYAに寄った。Software Design 2月号を買って帰る。「Armadillo-9で卓上ハードディスクプレーヤを作る」という記事が目を引いた。


価格が5万円ではちょっと手が出ないなと思う。HDDと合わせるとMac miniが買えちゃう。おもしろいんだけどな。RFIDの工作記事も興味深いが、実用性も含めてまだまだかな。

[日記] ジャストシステム対松下

IBMやサンマイクロシステムズの特許開放のアナウンスを聞いて、ほーっと思っていたら、国内で特許紛争勃発。あまり使わないヘルプシステムだが、争点は、ボタンがアイコンかどうかだ。ヘルプボタンをクリックして、機能ボタンをクリックすると機能の内容がポップアップするというGUIの話。ヘルプボタンの図柄がクエスチョンマークの横にマウスの絵が組み合わさっていたのでアイコンという判定。たったそれだけのことだけど、もっと注意しておくべきだったろう。

Wordも同様の機能を持っているけど、ヘルプボタンの代わりにプルダウンメニューを使うので違う。OpenOfficeのWriterもプルダウンメニューから詳細ヘルプをクリックする方式だ。もっともプルダウンメニューを開いてクリックする方法は使いにくいのだが、いずれも危ない橋は渡っていない。実用上は、Shift+F1でショートカットキーを使うのが正解だ。

[日記] CMP Media LLC.

CMPはThe Perl Journalを提供しているが、19.95$/年で、Dr. Dobb's Journal, BYTE.com, C/C++ Users Journal, The Perl Journal, and Software Development magazineの五誌をオンラインで提供するサービスを始めた。TPJだけでも16$/年なので、お買い得かな(^^;)ただし、PDFでコンテンツが提供されるのは、TPJとDr.Dobb's Journalだけ。そんなに読めるものでもないし、英語だしね(^^;)読みきれないよう気もする。

[日記] 複雑ネットワークの自己相似性

久しぶりのNatureネタ(NATURE|VOL433|27 JANUARY 2005)。ネットワークもフラクタル。取りあえず、記録だけ。というか、こういうのは現象論で、なぜそうなるのかが説明できていないような気がする。説明できないとしても、それをどのように利用できるのかが問題だ。

[added: 2005-02-04] Chaoming Song et al, Self-similarity of complex networks, pp392-395は、WebやSocial Network、たんぱく質の相互作用ネットワークのような複雑なネットワークは、length scale transformation下で不変、自己相似性であることを示している。自然発生的な現実の複雑なネットワークは、'Small world'であること、すなわち、ノード間が短いパスで結ばれていることと、ノードのリンク数の確率分布が'power law'(scale free)で表現されることで注目されていたそうである。これらの性質はフラクタルに通じている。この文献を読み解くには、粗視化(coarse-grain)の手法の理解がポイントになる。香取眞理著、「複雑系を解く確率モデル」、講談社 ブルーバックスB1193、1997年11月20日第一刷、217ページ、740円、が参考になるだろう。今日は風邪で休み、寝ながらこの本を読んでいた。一日中寝ていたら、ようやく元気が出てきた。この本はだいぶ前に一度ざっとは読んだのだけど、いい本だね。


[日記] スクリプト言語の学び方

Fe2+さんが「実践実用Perl」について、Floating Logに書いてくださった。Python使いなのに、わざわざPerl本を読んでいただいて大変有難い。Floating LogはPython Desktop ServerとPython Community Server (PyCS)のペアで実現されている。このDesktop Serverという概念が僕は好きだ。「実践実用Perl」のコンセプトもデスクトップサーバーである。松井さんと言えば、arXivからの昨年11月15日付けメールで、'A Note on Bulk Quantum Turing Machine'という論文を投稿されているのを知った。印刷してはみたけど、難しそうだった。核磁気共鳴量子コンピュータに関するものだったが。また機会があれば教えてもらいたい。

Googleで検索してみると、「実践実用Perl」に関する感想のようなものが僅かだが散見されるようになってきた。松井さんは読みやすいと言ってくださっているが、敷居が高いという感想もある。極悪さんの書評も二冊目、毎コミの売り出し方も中級者用ということになっている。スクリプト言語の学び方についてだけど、僕が思うのは何をしたいかがまず重要であるということだ。その前にスクリプト言語で何ができるのかを知ることも重要である。実践的に、どのようなことができるかを示したのが、「実践実用Perl」の大きな特徴である。これを参考にして、読者がスクリプト言語で何をしたいのかを模索してもらえば、著者としては本望である。

[日記] 袋ファイル復活

A4のボックスファイルにファイリングフォルダに文献を挟んで整理を続けていたが、ファイリングフォルダの入手が難しい。送られてきた封筒を溜めていたので、口の部分を切り取って、A4サイズに合わせ、文献を入れてボックスファイルに並べてみた。意外と収まりが良い。昨晩イオンで、事務用の角形2号の封筒を80枚を買ってきた。417円也。1枚5円だから、格安のファイリングになる。封筒にはタックタイトルというはがせるタイプのラベルにタイトルを書いて貼り付けておく。

jpg/CA240087_s.JPG角形2号封筒による袋ファイル

jpg/CA240088_s.JPGボックスファイルに袋ファイルを格納する

[日記] 連休最終日のRe-membering Jacques Derrida

せっかくの三連休なのに風邪気味でなにか調子が悪い。最初の日はヒロデンボウルでボーリングを2ゲームしたあと、白島のだいしんまで焼肉を食べに出かけた。だいしんに入る前にアーバンビューグランドタワーを前のベンチでひっくり返って撮影しているカメラマンを真似たわけじゃないけど、帰りに携帯で写してみた。166m、43階なんだそうだ。

jpg/CA240090_s.jpg夕暮れのアーバンビューグランドタワー

昨日は咳が出始めたので、一日中篭っていたが、さすがに今日はせっかくの休みでもったいないと、散髪の後、広島県立図書館まで歩いて出かけた。カーニハンの「ソフトウェア作法」とホランドの「インダクション」を目当てに行ったのだが、書棚にない。調べてもらおうかと思ったがタイトルぐらいしか正確に言えないし面倒だなと思いながら、書棚を探索して歩いたあと、雑誌の棚で、新潮が目に入る。3月号だ。2月号が見たいのだが(きっかけは茂木健一郎 クオリア日記: うーん、無茶苦茶だ。)と受付で聞くと、2番カウンターで閲覧を申し込んでくださいと言う。図書カードを出して頼むと、整理棚を調べたあと、どの新潮ですかというから、単なる新潮ですと答える。雑誌の棚には3月号がありましたがと付け加えると、ああわかりましたと書庫から出してくれた。頼んだときにはおそらく最新号を探そうとしていたのだろう。Re-membering Jacques Derridaが目当て。座談会「デリダ追悼」柄谷行人・浅田彰・鵜飼哲(新潮2005年2月号)とKOJIN KARATANI OFFICIAL SITE - ホームには書いてある。後付を見ると、京都大学の現代思想自主ゼミらしい。第46回京都大学11月祭公式Webサイト 一般企画一覧(模擬店企画以外)には、「現代思想自主ゼミ|柄谷行人×浅田彰講演会」とある。

ハイフン付きのRe-memberingというのはバラバラのものを再構成するという意味だ。昨年10月9日に亡くなったデリダを、知己である3人が喪の作業を行おうというわけだ。活字も細かく段数も多い組み方なので、分量としてはかなり多い。午後5時の閉館までに読みきれるかなと必死になって読んだ(^^;)記憶に残ったのは、柄谷氏の「1990年代はDerridaに興味を失って読んでいない。カントやマルクスを現代思想は超えていない」ということと歴史の60年、120年周期説。現代思想は、小阪修平氏の「そうだったのか現代思想」ではニーチェに始まるということになっているのだが、カントやマルクスは確かにそれ以前の思想家だ。周期説については一回きりの話で、周期と言われても困る。普通、世の中の周期はgenerationで考えると40年と言われている。平均的にはそれぐらいで変化が起きているのではと思う。サイエンスの領域では、大体今出ている話は1950-1970年ぐらいに根元があるような気がするので、30-60年という周期は当たらずとも遠からずということになる。これは根本的な変化が起きる周期(これも一回きりしか検証できていないかも^^;)なので、同じような状況が繰り返されるという周期とは違う。120年離れると歴史的な関係も希薄になるだろう。これぐらい時代が離れて同じような状況が出現するというのも考えにくいと思う。このようなことを考えていると哲学にしてもそれ以外のものにしても歴史からは逃れられないという気がしてくる。歴史とは何だろう。時間とは何だろうと思う。歴史を考えるとむしろ何事も一回性の中にあると感じる。普遍性を追求することとは相容れない。(revised: 2005-02-14;2005-02-15)


議論の中に哲学が現実の経済や社会に影響を与えうるのかということも問題意識としてはある。最近の哲学者にサルトルのような人間としての迫力を感じないのは残念な気はする。最近やはりすごいなと思うのはチョムスキーだろうね。ちょっと哲学者とは違うかもしれないけど。実はデリダは読んでいないというか、まず本を持っていない。本を持っているからといって、読んだことにはならないけど。「エクリチュールと差異」ぐらいは読んでみたいと思っていた。


図書館からの帰りに、TSUTAYAに寄って、Linux World 3月号を購入。ブログサーバを立ち上げようという特集。中身はMovable Typeだ。マルチメディアソフトウェアを中心としたデスクトップ用途を想定したBerry LinuxとKNOPPIX 3.7のCD-ROMが付録。Berry LinuxにはWhizという日本語入力ソフトウェアが収録されている。サイトデザインはこりゃなんだという感じはするが、好き好き、まあいいか。ソフトウェア作法とインダクションについて広島県立図書館蔵書の検索から結果を印刷した。来週はこれを持っていこう。話が早いだろう。

[日記] 発想刺激型データベース

最近は哲学づいている。なぜか。それはオントロジーに始まる。それから知識循環型データベースや発想定着型データベースの概念とも関係がある。知識を生み出す現場は哲学とも関係がある。何か書くという行為はズレ(現代思想の用語で言えば、差延)を生ずる。ズレがさらに新たな記述を生み出すという連鎖が生ずる。これは一種の推敲でもあるが、違った側面からはブルトンの自動記述のような方法論も生み出し得る。ズレとは現実とのズレかもしれないし、本来あるべき記述とのズレかもしれない。あるいは連想から生ずるズレかもしれない。言葉のオントロジーが新しい記述を生み出す。このような考え方を知識の組織化、データベース化に役立てられないかという、深遠なる(^^;)発想が基盤にある。単なる静的なデータベースではなくて、発想を刺激するようなデータベースを作れないかという問題意識である。また、新しいコンセプトが生まれた。発想刺激型データベース(^^)v

デリダの「エクリチュールと差異」のエクリチュールはフランス語で書く行為を指す。この本には、そこで生ずる差異について書いてあると思われるのだが。ロラン・バルトには「零度のエクリチュール」という著作があって、そこにはエクリチュールとは何かということが書いてある。「言語体(langue)と文体はオブジェだが、エクリチュールは機能である。すなわち、エクリチュールは創造と社会との間の関係であり、社会的用途によって変形された文語であって、人間的意図においてとらえられ、こうして歴史の大きな危機にむすばれる形式なのだ。」(渡辺淳・沢村昂一訳、みすず書房、1971[原著: 1953])

[日記] 思索

書かれたものを読むことは、書いた人の意図を汲み取ることが目的のようでいて、実は自分自身を読み取ることである。自分なりの視角でテクスト(フランス語風に)を解釈することである。バカの壁があって、自分の知っていることしか読み取れない場合も十分ある。無論、著者独自の視点に気が付き、世界についての新しい透視図を得ることができる場合もある。著者の意図しない新しい観点を得る場合もあるだろう。その時こそは読書の至福の瞬間かもしれない。

「つまり問題はテクストの《説明》や、ある《実証的成果》(作品の真実となるような最終的記号内容、または作品の限定)ではなく、反対に分析(または分析に似たもの)を通して記号表現の戯れに、エクリチュールに加わることであり、ひとことで言えば、自分の作業によってテクストの複数性を実現することなのである。」ロラン・バルト、「新=批評的エッセー」、花輪光訳、みすず書房(1977[原著: 1972])


UMLによるモデリングやXMLやRDFのスキーマの設計はテクストを記述することとは違うが、現実の世界を如何に記述するかという意味では似ている。タグ付きのテクストとは、へんなテクストだよね。タグは言わば差異を最小化するための記号なんだが、実はそんなことは不可能なんだ。

[日記] 思索Ⅱ

昨日は小郡で統計力学的確率モデルの勉強をして、今日は鼻水を一日中啜りながら、仕事をしていた。帰宅しても鼻水は止まらない。まだスギ花粉は本格的に飛散していないという話だが、なんかの間違いじゃ(^^;)・・・セレスタミンを2錠飲んだ。

人工知能学会誌の2004/11月号の特集、「統計モデルと学習の数理」で「統計学習モデルへの統計力学的アプローチ」の記事があったけど、どちらかと言えばこれからだよという紹介記事だった。ブルーバックスB1193の「複雑系を解く確率モデル」は当に統計力学的確率モデルそのものの話なんだけど、確率モデルの情報や話が身の回りに集まってきて、少し勉強になりそうだ。言語情報処理にも確率モデルを使おうという話もある。確率というと何か数学的な仮想のように感じられるが、実は自然界の基本的な特性と考えられないこともない。量子力学の世界では日常茶飯事のことであるように。


これも運命の廻り合わせか、物性論の世界に回帰している自分を見出している。

[日記] 雨のおかげ・・・

雨がよく降る。県北は雪崩に要注意らしい。昨日、行きつけの内科で、4点セットの処方を受けたせいか、雨のおかげか、花粉症の症状は弱まった。


花粉情報ではまだ飛んでいないということになっているのだが・・・

[日記] 本探し

予定通り、昼から県立図書館に出掛けた。renomaの黒い小さなバックに、入らなかった場合に備える手提げのビニール袋と借りる予定の本の検索結果を印刷した紙を入れている。空気は冷たく、頬が痛いぐらい。付属校の門の前を通り過ぎるくらいから、日が射してきて暖かくなった。着くと開架の本棚をざっと再チェックし、本がないことを確認して、カウンター2へ。印刷した紙を渡して、依頼する。それほど待たされることもなく、名前を呼ばれる。館内は人で一杯。貸し出しにしてくださいと頼む。依頼のために準備した用紙をいただいておいてよいでしょうかって言うから、何に使うんだろうと一瞬思ったが、持って帰ってもゴミになる可能性が高いし、いいですよと答えた。本をバックに詰めると予定通り4冊が収まった。

本は基本的に購入する主義だが、古い本は入手できないことも多い。Amazonのマーケットプレースでも中古にしては新品に近い価格が付いている場合がある。図書館を使うのもいいなあと今回思った。なにしろ無料だし。引越しで、歩いていける距離に図書館があるようになったのもありがたい。運動不足の解消と一石二鳥である。自分の別宅書庫と考えればよいわけだ。広島県立図書館は60万冊を所蔵している。新しい10万冊が開架式で公開されていて、残りは地下書庫に所蔵されているのだそうだ。本を探す場合、蔵書検索は必須ということ。


目的はすぐ達せられたので、混み合う図書館から即時撤退。帰り道、例によってTSUTAYAに寄る。ユニマガのインターフェースの街角を見て買おうかなと思ったが、踏みとどまる。まずインターネットで調べてみよう。借りた本をリストアップしておこう。3/13までに返却のこと。

エクリチュールと差異  上
ジャック・デリダ/〔著〕  
法政大学出版局  1983.
370p  20cm                                                                
叢書・ウニベルシタス  
Le´criture et la diffe´rence.の翻訳                  
¥2500                                                                        
エクリチュールと差異  下
ジャック・デリダ/〔著〕  
法政大学出版局  1983.06                                                    
288p  20cm                                                                
叢書・ウニベルシタス  
L’e´criture et la Diffe´rence.の翻訳                
¥2500                                                                        
ソフトウェア作法  
B.W.カーニハン,プローガー/著  
共立出版  1981.05                                                          
516p  21cm                                                                
¥3800                                                                        
インダクション  :推論・学習・発見の統合理論へ向けて  
J.H.ホランド/〔ほか〕著  
新曜社  1991.05                                                            
462p  22cm                                                                
新曜社認知科学選書  
Induction.の翻訳                                                        
ISBN:4-7885-0393-X                                                           
¥6300                                                                        

[日記] 地震

山口県東部で震度3の地震。広島も少し揺れた。

[日記] 個人と社会

昨日は阿品で少し飲み過ぎ。車を会社に置いて帰ったので、今朝はJRで読書。帰宅して、「そうだったのか現代思想」の最終章「現代思想の可能性 - 相対主義を超えて」を読み終える。うーむ、相対主義を超えて、自己と倫理をこれから問い直していこうということのようだが、何を考えるんだろうね。個人と社会との関わりは、会社、学校、地域社会、メディア、政治、インターネット等を通じて生ずるわけだけど、個人とはどうあるべきなんだろう。戦後から、高度成長時代を経て、バブルの時代、バブルのはじけた現在・・・社会に大きなひずみが生じている。不公正の是正、ひずみの調整、政治の役割が重いのは間違いないが。哲学や思想は政治にどのように反映されるのか、あるいはされてきたのか。

[日記] 霙

昼から、霙が大量に降った。退社時の車の窓にはシャーベット上の氷が敷き詰められていた。一週間が随分早く感じられる。あっという間に2月も後がなくなってきた。さて、し残している仕事の後片付けはできるのだろうか・・・

先週の土日は本更新日記へのアクセスが突然100を軽く超えた。何が原因だったのだろう。それまでの最高は85だと記憶している。まあ、気にしても仕方がないのだが。マイペース。

[日記] インターネット時代の視聴率

ライブドア対フジテレビの物語。毎日楽しみに経過を見ている。1日は24時間。これはみんなに平等に与えられた条件である。この時間をどのように使うか。インターネットによってテレビに付加価値が付くか。いや、インターネットとテレビとどちらが視聴率が高いか。あるいはゲームとテレビと、あるいは携帯電話とテレビと、あるいはPCとテレビとの比較を考えるべきかもしれない。僕の場合は、ほとんど一日中PCに向かっている。そのうちインターネットがかなりの部分を占めているかもしれない。テレビを見る時間、これは帰宅してPCに向かっている時間、横に置いたテレビをながら視聴しているだけである。テレビよ、驕るなかれ。

[日記] 人間中心主義

今朝のテレビで地理の話が出ていた。日本人にイラクの地球上の場所を地図で指し示させると正答率が12%だそうだ。世界を知らないアメリカ人でも24%。信じられないことだが、ヨーロッパがどこかもわからないという人がいたのにはさらに驚いた。しかし、地理教育の欠落の問題は当然として、テレビでニュースを見ていればイラクの地理的位置について学習する機会はいくらでもあるだろうと思うのだが、そういう番組も見ないということなのだろうか。

人間の生き方がおかしくなっているのか。テレビが登場し、続けて、ビデオ、テレビゲームが茶の間を侵略し、パーソナルコンピュータがいつの間にか会社や家庭に一人一台以上並び、さらには移動時間にもケータイが人間の時間を支配し続けている。人間よ、自分を取り戻せ!・・・と反省を込めて自戒する。人間中心のコンピューティングをさらに発展させていこう。

[日記] 実用的推論スキーマ

J.H.ホランドらの「インダクション 推論、学習と発見の過程」(新曜社、1991年[原著: 1986年])によれば、帰納的推論をベイズ確率論や決定理論の形式論的な性質を用いて明確化しようとする研究は1960-1980年代に行われてきたらしい。この方法が適切な場合も多いが、「基本的に形式論的なアプローチをとっていくことが帰納を解明するのに成功するとは思っていない」というのが、この本の立場である。「人間は形式論理学にあるような純粋に形式論的なルールをあまり使わず、その代わりに実用的推論スキーマ(pragmatic reasoning schema)とわれわれが呼ぶものに頼って推論する」「この実用的推論スキーマは、物の種類、事象の関係、問題の目標の一般的なクラスにおいて成り立つ関係の特徴を示す推論ルールの集まりである。これらのルールは特定の内容領域に縛られていないという点では確かに抽象的ではあるが、論理規則ほど内容と無関係というわけではない。われわれの考えでは、論理規則はあまりに一般化されすぎており、多くの推論の目的にとっての実用的有効性を失ってしまっている。」発想定着型データベース、発想刺激型データベースの概念の展開に、この本は大変役立ちそうである。

[Haystack] Think Again... Wrapper induction

HaystackのAndrew William Hogue氏の修士論文を調べ始めた。


[マイクロソフト] マイクロソフトの憂鬱の裏側

マイクロソフト:「Windowsへのデスクトップ検索技術搭載は急がず」 - CNET Japanネタ。MSN、デスクトップ検索戦争に参戦--MSN Toolbar Suiteベータ版公開 - CNET Japanにも関わらずこんな記事が出てくる。WinFSの実現、さらに遠のく--マイクロソフト幹部明かす - CNET Japanの記事も合わせると何か元気がないような気もするが。

しかし、一方では、マイクロソフト、第2四半期決算--利益が前年比倍増、売上も過去最高に - CNET Japanという記事も。マイクロソフトはそれほどいい格好をしなくても儲かるのだ。マイクロソフトは、独禁法上の問題もあるだろうが、Windowsにおける他社の活躍を排除することは得策でないことに気付いている。FireFoxだって、Windows上で動くのだ。IEを改良したって、マイクロソフトは儲かるわけではない。Windowsが支配的なOSであり続けるためにはまず何をしたらよいかを考えればよいわけ。どのタイミングで新しい技術を投入するのがよいのか、チャンスを窺がっているだけだろう。マイクロソフトにとって、デスクトップ検索はビジネス上はWeb検索ほど重要なものではない。Googleのデスクトップサーチが自分の庭で動くのは、Windows環境を強化するだけで、なんの問題もない。今やオープンソースで開発しているものもWindowsを最優先でリリースするようになっている。HaystackもWindowsが最優先でサポートされているだけで、Linux版はいつ出てくるのかわからない(stripped-down版は対応している。Eclipseのプラグインとすることによって、プラットフォーム非依存の方向に舵取りしつつある。)。マーケットが大きいから当然である。

[Perl] Keeping Up with the World: rss2html.cgiの改造計画

The Perl Journalの1月号のアナウンスがあったので、取りに行ってきた。Simon Cozensさんの記事は、Keeping Up with the Worldというタイトルで、中身はコンソールベースのRSSリーダーである。モジュールはPOE::Component::RSSAggregatorとCurses::UIあたりを使う。おもしろそうだが、CursesはWindowsでは難しいだろうね。

「実践実用Perl」で紹介したRSSリーダー、rss2html.cgiをベースにして、新しいリーダーを設計する。RSSのデータベース的取り扱い、表の出力形式を中心とするUIが課題だ。Haystackで設計しているRSSリーダーもRSSのback issueの問題を意識している。更新日記のRSSはback issueを残す形で配信を続ける仕組みを構築しているが、rss.cgi/rss2html.cgiのシステムは、他のサイトの配信は最新のものしか見ることが出来ない。重要な記事の蓄積は読んだものについてメモを残す形でしか行わないポリシーで設計しているからである。100件以上RSSを購読していても実際上読むのはほんの僅かだ。どれを読むべきか、選び出す仕組みが何か欲しいなと考えている。何を基準に選ぶんだろう。キーワード検索するぐらいしかないか。

[Perl] Standalone TrackBackの動く条件

さて、何か遊べないか考えてみよう。まず動く条件を確認しよう。


以上のモジュールが必要だ。jperl/Perl5にデフォルトでインストールされていないのは、Storableだけだ。ActivePerlのレポジトリには0.611があるので、取りあえず、ppmでインストールする。LWPは、デフォルトで5.45がインストールされているが、CPANの最新版、5.803も5.005以上対応とあるのでインストールすれば動くはずだ。以前、Perl5.8にインストールされている5.801をインクルードして動かそうとして、へんなエラーが出ていたのは、パスの指定間違いだったのかも、今日試すとバージョンを表示するだけのレベルのテストだが、問題ない。

テストするためには、動いているブログが必要なんだが、ココログに立ち上げるか。送信はローカルサーバーからでもできるだろうが、受信はWebサーバーでないとできない。@niftyのCGIで動くかな。結局自前のサーバーがないとテストが難しいものが多い。LANの中でテストするか。

[Perl] My rakucopy

RakuCopyというツールを極悪さんに紹介してもらって以来、大変便利に使わせていただいている。TeraPad上で、更新日記を編集するツールとして使っている。Rakucopyをインストールしておくと、IE上の右クリックで、Rakucopyを選択すれば、引用したいWebページのURLとタイトルと選択引用部をクリップボードに取得することができる。TeraPadでPerlスクリプトを起動して、クリップボードからデータを取得し、エディタ上に加工出力する。単にURLとタイトルを取得したい場合にも使えるので、出力形式を選択できるようにしたかった。Tkモジュールを使ってスクリプトを改造したので紹介しておこう。

use Win32::Clipboard;
use Tk;
# クリップボードの文字列を取得する
$CLIP = Win32::Clipboard();
$clipstr = $CLIP->Get();
# Rakucopyクリップボード文字列から取得する文字列の改行は CRLF である
@content = split(/\r\n/, $clipstr);
# クリップボードのタイトルの取得
$title = shift(@content);
# クリップボードの URL の取得
$url = shift(@content);
# クリップボードの引用部分の取得
$cite = join("\n",@content);
my $mw = MainWindow->new;
$mw->title("Menubutton");
$menub = $mw->Menubutton(-text => "My rakucopy", -menuitems =>
	[["command" => "Hyperlink", -command => \&hyperlink],
	 ["command" => "Citation", -command => \&citation],
	  "-",
	 ["command" => "Exit", -command => sub { exit }]
	])->pack;
MainLoop;
sub hyperlink{
	print "<a href=\"$url\">$title</a>";
	exit;
}
sub citation{
	print "<p><a href=\"$url\">$title</a>\n<pre>\n$cite\n</pre>\n";
	exit;
}

出力形式はメニューボタンの-commandに対応するサブルーチンで指定する。いくらでも拡張可能である。TeraPadに複数のスクリプトを登録することもできるが、登録は面倒だし、一つのスクリプトをメンテナンスすればよいので楽である。スクリプトの登録方法は、TeraPad Toolsにある標準入出力ツールのreadme.txtを参考にすること。

次にTeraPadのツールからスクリプトを起動して、Tkのメニューボタンを表示したところを示す。jperl/Perl5では、Tkモジュールは標準でインストールされていないので、ppmでインストールしよう。Tkのバージョンが800.022なので、日本語データのウィジェットへの表示には問題が出るだろう。それだけは注意すること。入門Perl/Tkがようやく役に立った。

jpg/myrakucopy_s.jpgMy rakucopy on TeraPad

[Perl] 更新日記記事へのリンク出力スクリプト

My rakucopy(perl)でPerl/Tkスクリプトの可能性をようやく具体化できたが、その勢いを駆って、新しいスクリプトを考えてみた。昨晩はそれに嵌っていて、日記を書けなかった(^^;)

日記を書いている時に自分の記事を引用したくなることがよくあるので、更新日記のローカルに蓄積したRSSファイルを読んで、年月とタイトル(分類)をリスト表示し、ボタンを押すと、標準出力にHTMLのハイパーリンクを出力するという機能を実現した。昨晩嵌ったのは、Tkの-commandに、引数を持つサブルーチンを記述する場合、\&subroutine($arg1,$arg2)と書いたのではTk Errorになるところ。[\&subroutine, $arg1, $arg2]のようにリストで書かなくてはならない。

use Tk;
use Unicode::Japanese;
$s = Unicode::Japanese->new();
$cgidir = "C:/anhttpd" . $ENV{'CGIDIR'};
opendir(DIR, $cgidir);
@files = grep(/^renewal(_\d{4}_\d{2})?\.xml$/, readdir(DIR));
foreach $file (@files){
	open(FILE,"$cgidir/$file");
	while(<FILE>){
		$_ = $s->set($_,'utf8')->sjis;
		if(/<item /){
			$sw = 1;next;
		}
		if($sw == 1){
			if(/<title>(.+?)<\/title>/){
				$title = $1;
			}elsif(/<link>(.+?)<\/link>/){
				$url = $1;$date = $1;
				if($date =~ s/^.+(\d{4})_(\d{2})\.html#([a-z]+)_(\d+)$/$4/){
					$link{$date} = "$url\t${1}-$2\t$title($3)";
				}elsif($date =~ s/^.+\.html#([a-z]+)_(\d+)$/$2/){
					$link{$date} = "$url\t今月\t$title($1)";
				}
				$sw = 0;
			}
		}
	}
	close(FILE);
}
closedir(DIR);
my $mw = MainWindow->new;
$mw->title("Menubutton");
$menub = $mw->Menubutton(-text => "Article Links")->pack;
foreach my $key (sort keys(%link)){
	($link, $date, $title) = split(/\t/,$link{$key});
	$menub->command(-label => "$date  $title", -command => [\&hyperlink, $link, $title]);
}
$menub->separator;
$menub->command(-label => "Exit", -command => sub { exit });
MainLoop;
sub hyperlink{
	my($link, $title) = @_;
	print "<a href=\"$link\">$title</a>";
	exit;
}

jpg/rn2link.jpgrn2link.plのMenubutton表示の一部

[Perl] 更新日記記事のリンクをクリップボードに貼り付ける

更新日記記事へのリンク出力スクリプト(perl)のスクリプトを改造することにした。Tkから標準出力で取得データを出力する場合は、Tkのループから抜けないと出力されないので、記事を適時選択して繰り返して出力するという使い方ができない。記事を選択してメニューボタンを押すとクリップボードにハイパーリンク文字列が貼り付けられるように書き換えた。こうするとスクリプトを起動した状態のままアプリケーションのように維持できる。記事も最新のものがボタンの上位に表示されるようにリバースでソートし、Exitボタンを最上位に置くことにした。このほうが実用的である。それでは改造したスクリプト。jperl/Perl5で動作している。Menubuttonメソッドの-textオプションでは、SJIS文字列は文字化けする。-labelオプションではSJIS文字列は問題なく表示される。

use Win32::Clipboard;
use Tk;
use Unicode::Japanese;
$s = Unicode::Japanese->new();
$cgidir = "C:/anhttpd" . $ENV{'CGIDIR'};
opendir(DIR, $cgidir);
@files = grep(/^renewal(_\d{4}_\d{2})?\.xml$/, readdir(DIR));
foreach $file (@files){
	open(FILE,"$cgidir/$file");
	while(<FILE>){
		$_ = $s->set($_,'utf8')->sjis;
		if(/<item /){
			$sw = 1;next;
		}
		if($sw == 1){
			if(/<title>(.+?)<\/title>/){
				$title = $1;
			}elsif(/<link>(.+?)<\/link>/){
				$url = $1;$date = $1;
				if($date =~ s/^.+(\d{4})_(\d{2})\.html#([a-z]+)_(\d+)$/$4/){
					$link{$date} = "$url\t${1}-$2\t$title($3)";
				}elsif($date =~ s/^.+\.html#([a-z]+)_(\d+)$/$2/){
					$link{$date} = "$url\t今月\t$title($1)";
				}
				$sw = 0;
			}
		}
	}
	close(FILE);
}
closedir(DIR);
my $mw = MainWindow->new;
$mw->title("Menubutton");
$menub = $mw->Menubutton(-text => "Article Links")->pack;
$menub->command(-label => "Exit", -command => sub { exit });
$menub->separator;
foreach my $key (sort {$b <=> $a} keys(%link)){
	($link, $date, $title) = split(/\t/,$link{$key});
	$menub->command(-label => "$date  $title", -command => [\&hyperlink, $link, $title]);
}
MainLoop;
sub hyperlink{
	my($link, $title) = @_;
	my $CLIP = Win32::Clipboard();
	$CLIP->Set("<a href=\"$link\">$title</a>");
	return;
}

jpg/article_links.jpgTeraPad上で起動した状態で待機する記事リンク出力スクリプト

[Perl] Rakucopyのクリップボード出力を自在に加工して張り付ける

更新日記記事リンク出力を標準出力からクリップボード経由に変更すると大変使いやすくなるので、Rakucopy出力加工スクリプトも同様に変更した。これによって、TeraPadによる更新日記編集時、更新日記記事リンクやIE表示ページのリンクのHTML出力を常時利用することができるようになった。TkによるGUIのメリットを実感できる。TeraPadの「ツールの設定」にスクリプトを登録し、「起動時に実行」をチェックしておけば、編集機能の一部としてスムーズに使える環境を構築できるだろう。スクリプトはjperl/Perl5用である。

use Win32::Clipboard;
use Tk;
my $mw = MainWindow->new;
$mw->title("Menubutton");
$menub = $mw->Menubutton(-text => "My rakucopy", -menuitems =>
	[["command" => "ハイパーリンク", -command => [\&hyperlink, "hlink"]],
	 ["command" => "引用", -command => [\&hyperlink, "cite"]],
	  "-",
	 ["command" => "終了", -command => sub { exit }]
	])->pack;
MainLoop;
sub hyperlink{
	my ($arg) = @_;
	# クリップボードの文字列を取得する
	$CLIP = Win32::Clipboard();
	$clipstr = $CLIP->Get();
	# Rakucopyクリップボード文字列から取得する文字列の改行は CRLF である
	@content = split(/\r\n/, $clipstr);
	# クリップボードのタイトルの取得
	$title = shift(@content);
	# クリップボードの URL の取得
	$url = shift(@content);
	# クリップボードの引用部分の取得
	$cite = join("\n",@content);
	if($arg eq "hlink"){
		$CLIP->Set("<a href=\"$url\">$title</a>");
	}elsif($arg eq "cite"){
		$CLIP->Set("<p><a href=\"$url\">$title</a>\n<pre>\n$cite\n</pre>");
	}
	return;
}

jpg/tk_tool.jpgTeraPad上でPerl/Tkスクリプトを編集ツールとして使う

[Perl] jperl/Perl5とPerl5.8の併用の仕方

Perlの開発はPerl5.8、Ponie/Parrot、Perl6/Parrotが平行して続けられている。C版のPerlはPerl5.10まで開発が続けられる。Perl5.10は現在のPerl5.8の延長線上にあり、これのParrot版がPonieである。5.10までで、C版のPerlの開発は終了し、Perl6/Parrotが次世代のPerlとして残るロードマップが公表されている。

Perl5.8は5.8.1以降、Perl5.6の完成形として、SJISユーザーにとっても実用的なPerlとして認知されるようになってきた。Perl5.8はUnicodeをベースとしているために、次世代のWeb、Semantic Webとは相性がよいはずだし、それを見越してUnicodeをベースとしていると考えられる。LonghornのMSHもSJISで動いているので、Windowsのデスクトップ環境の文字コードがSJISであることは当面変わりそうもないが、そのような問題が内在するにせよ、Web中心のテキスト処理の世界では、Unicodeは次第に有効になっていくだろうと考えられる。従って、今後、Perl5.8でUnicode中心のテキスト処理を検討することは有意義であるだろう。

jperl/Perl5とPerl5.8の併用の仕方を少し説明しておこう。

  1. 鈴木紀夫さんのjperlのインストール手順に沿って、ActivePerl build 522とjperlをインストールする。
  2. 次にActiveState - ActivePerl free Perl open source binary language distribution - Dynamic Tools for Dynamic Languagesから、最新版のActivePerl、現在であれば、5.8.6.811をダウンロードしてインストールする。この時、build 522とは別のフォルダにインストールしよう。例えば、C:\Perl5.8である。この段階でPATHの先頭に、Perl5.8のパスが付加されるので、perlでスクリプトを起動する場合には、Perl5.8が使用されることになる。jperlのパスは別に通されているので、jperlでスクリプトを起動すれば、jperlが起動する。
  3. ライブラリモジュールを追加してインストールする場合には、Perl5用のモジュールをインストールする場合には、Perl5のbinディレクトリにあるppmを起動する。単にコマンドプロンプトでppmを起動すると、バスが先に通っているPerl5.8のppm3が起動されるはずである。どちらのppmを起動するかで、モジュールが置かれているレポジトリとモジュールのインストール先が決まる。
  4. CPANからダウンロードしたモジュールをインストールする場合は、Makefile.PLをどちらのperlで起動するかによって、インストール先が決定される。jperl/Perl5で使いたいライブラリなら、CPANのREADMEを読み、5.005に対応していることを確認してダウンロード・解凍し、Perl5のフルパスを指定してMakefile.PLを起動しよう。Cによる拡張をしているモジュールでなければ、後は単にnmake、nmake test、nmake installでOKである。

[Perl] Menubuttonに日本語文字を表示する

Perl/TkのMenubuttonの-textオプションに単に日本語SJISを指定すると文字化けする。これを回避するには、-fontオプションでフォントを指定する。フォントの書体名、フォントサイズ、種類(normal、bold、italic)を半角空白で区切る。次のようだ。jperl/Perl5で使われているTk800.022でも日本語SJIS表示は問題なさそうだ。フォントの書体名「MS ゴシック」に含まれる空白は全角である。種類のnormalは省いても問題ない。デフォルトがnormalである。

$menub = $mw->Menubutton(-text => "更新日記記事リンク出力", -font => "MS ゴシック 10.5 normal")->pack;

jpg/tk_ja_font.jpgTkのメニューボタンに日本語文字を表示する

[Perl] 更新日記コンソール

Perl/Tkとエディタをクリップボードで結ぶことによって、更新日記専用のコンソールを作り出せることに気付いた以上、行き着くところまでいく必要がある。二つのスクリプトを一つにまとめた。長々と引用するのも見難くなるから、スクリプトを添付しておこう。jperl/Perl5用である。

更新日記コンソール rn_console.pl(.txt拡張子ファイル)

jpg/rn_console.jpg更新日記コンソール

参考になる関連記事もリストを置いておこう。このリンク出力にも更新日記記事リンク出力を使用した。


[Perl] JEncodeとJcode2

Perlの日本語処理に新しい動きが出ていることに気が付いた。どんぞこCGI+--のサイトはレベルが高い。今頃になって知るとは・・・Jcode5のメーリングリストでアナウンスがあって知った。Perl5.8.6.811にJEncodeとJcode-1.99_02.tar.gzをインストールしてみた。Perl5.8では、JEncode.pmをライブラリパスにコピーするだけ。JcodeのほうもMakefile.PLはJcode.pmをライブラリパスに置く+αだけのmakefileしか作らないので、単にコピーしても問題ないはず。モジュールのテストはどちらも問題なく通る。


[Perl] 更新日記コンソールⅡ

Perl/Tkで作り始めた更新日記コンソールを、日記作成支援システムから「実践実用Perl」の全システムをデスクトップで管理するためのコンソールに変貌させようと、Perl/Tkを本格的にいじりはじめた。Tcl/Tkにもしばらく触っていなかったので、なかなか感覚が戻らなかったが、ようやくGUIの構成を自在に制御できるようになってきた。クリップボードの制御も、Win32::Clipboardモジュールを使わずにTkで行うように変更。当面はjperlで作りこむ。Perl5.8では、encoding 'shiftjis';を使うとエラーになってしまうし、utf8でスクリプトを書いて、フォントにUnicodeフォントを指定しても、文字化けしてしまう。

jpg/rn_console2.JPG更新日記コンソールⅡ


[PlayStation] PSP

ソニー、PSPのワイヤレス機能活用でさまざまなシナリオ - CNET Japanの記事の特許公開番号のリンクが間違っているので調べた。US20040266529A1、Methods and systems for remote execution of game content and presentation on a wireless portable device (December 30, 2004)が話題の公開公報である。リンクはテキストなのでわかりにくいから、IMAGEのリンクからTIFFビュワーで明細書にアクセスするとよい。図を見ればイメージを掴みやすい。

PSPについては批判もあるが、評価も高い。おもしろいツールになりそうな雰囲気ではある。無線LANで使うPDAアプリは是非出して欲しいね。しかし、Cellマシンがどうなるかのほうが興味があるんだけど。

[PlayStation] Cell登場

Cellプロセッサの仕様が明らかに--動作速度は4GHz超に - CNET Japan

日経BPのTechOn!の記事では消費電力は2GHz動作時に40Wとか。冷却に苦労するのでは(^^;)速くてもファンの喧しいのには閉口するだろう。遅くても喧しいのもあるけどね(^^;)水冷搭載になるのかも・・・

しかし、最速のインテルプロセッサ対比どの程度の性能向上になるのだろう。コストは?、PS3の価格は?、PS3のOSは?というような疑問への回答はいつ出るだろう。今年の大きな楽しみの一つ。

[PlayStation] Cellの性能

新聞記事を読むと、大体インテルプロセッサの10倍程度の性能になるらしい。マルチコアと言われる構造を持ち、9個のコアが連携して同時に動くと説明されるとそうなのかなあと思う。一つのコアが一つのOSを動かすぐらいの性能を持つそうだ。同時にいろいろな作業をする場合には都合がよさそうだが、1つのコアが司令塔になって、一つの作業を8つのコアで分散して実行する場合のパフォーマンスはどの程度なんだろう。それで10倍の性能が出ればすばらしい。OSもかなり高度なものになっていくのだろう。後はコストと発熱の問題。


[Search] MSNサーチβ

マイクロソフト、ついに独自サーチエンジンを始動 - CNET Japanネタ。早速試してみた。現行のMSNサーチはとても使えないけど(^^;)、新しいエンジンは使える。Googleと似た結果も出るが、同一ではなく、違うといってもよいぐらいである。いろいろ試してみないと判断は難しいが、上位に並ぶサイトの順位に関しては、Googleよりも的確な結果を出しているようにも思える。おもしろいのは、RSSが出力されること。トップ10が配信されるので、これをRSSリーダーにセットしておけば、検索結果の上位サイトを随時チェック可能である。グッドアイデア。Googleも安泰とはとても言えない。

[SF] ファウンデーションの危機

Free Software Foundationの危機ではない。新・銀河帝国興亡史の話である。グレゴリィ・ベンフォード、グレッグ・ベア、デイヴィッド・ブリンの3Bがアシモフ(遺作、銀河帝国興亡史7「ファウンデーションの誕生」、早川書房、1995年[原著: 1993年])の後を継いで書いたシリーズ、各上下巻、全6冊(矢口悟訳、ハヤカワ文庫、2004年[原著: 1997-1999年])。ようやく、グレゴリィ・ベンフォードの一冊を読み終えた。おもしろかったハリ・セルダンの言葉、『人間の生活というのは、つまるところ、意義を追求しつづけることにほかなりませんから、むやみに情報を収集してみても、どうなるものでもないのです。大多数の人々にとって、他人の私的な情報など、いかなる役に立つというのでしょう?自分には無関係な、理解しがたい語句の羅列にすぎません。吹けば飛んでしまうような些事ばかりではありませんか』・・・


[Semantic Web] Scripting for the Semantic Web SFSW2005

Scripting for the Semantic Web SFSW2005ESWC 2005 :: 2nd European Semantic Web Conference 2005と同時開催される。

Developers Guide to Semantic Web Toolkits for different Programming Languagesに見るようにJavaとPythonを中心として様々なSemantic Web関連のツールが提供されている。PerlにPerlRDFぐらいしかないのは寂しい感じ。Rubyは三つぐらいのツールがリストアップされている。

[Tcl/Tk] Tcl/Tkへの回帰

「実践実用Perl」コンソールをPerl/Tkで作り始めたが、このまま作りこんでもPerl5.8への移行で苦労しそう、また、日本語かな漢字変換のインライン入力が、jperlで使えるバージョンでは古すぎて実現できておらず、得策ではないと判断。結局、Tcl/Tkに戻ることにした。Tcl/TkならTkの最新版が常に使えるし、拡張された機能も使うことができる。wishがcgiで動くことも以前確認済みだ。Tcl/Tkの文字コードの取り扱いは、多言語表示ができるなど、当初から最先端のレベルにあるので、これを使わない手はないだろうと思う。以前、I UnknownでTcl/Tkでクリップボードの連携を検討したとき、山本幸一さんが作成されたsendclipboard.tclはネットワーク上のWindows-Linux間のクリップボードの共有を簡単に実現した。この時感じた潜在的な可能性はまだ忘れていない。

しばらく、リハビリが必要なのがネックだが・・・

jpg/sendclip.jpgsendclipboard.tcl

[Tcl/Tk] PerlユーザーのためのTcl/Tk入門

まあ、ほとんど冗談だけど。RubyとPythonには、もりきゅうさんの「PerlユーザーのためのRuby入門」(オーム社、2003年)とマーティン・C・ブラウン著、「PerlユーザーのためのPython移行ガイド」(ピアソン・エデュケーション、2002年)があるのだが、Tcl/Tkだけには移行ガイドがない。リハビリを兼ねて、遊んでみよう。といっても、既に書いたPerl/Tkスクリプトを書き直してみるだけ。


wm title . Rakucopy2html
menubutton .menub -text "My rakucopy" -menu .menub.menu
pack .menub -padx 10 -pady 10
set m [menu .menub.menu]
$m add command -label "ハイパーリンク" -command {hyperlink "hlink"}
$m add command -label "引用" -command {hyperlink "cite"}
$m add separator
$m add command -label "終了" -command exit
proc hyperlink { arg } {
	set str [selection get -selection CLIPBOARD]
	set ary [split $str "\n"]
	set title [lindex $ary 0]
	set url [lindex $ary 1]
	set cite [lindex $ary 2]
	clipboard clear
	if { $arg == "hlink"} {
		clipboard append "<a href=\"$url\">$title</a>"
	} elseif { $arg == "cite"} {
		clipboard append "<p><a href=\"$url\">$title</a>\n<pre>\n$cite\n</pre>"
	}
	return
}

文字列の代入や分割、配列からの取り出し方は、Perlとは随分違うので戸惑うわけだが、慣れればどうってことはない。サブルーチンへの引数の与え方、サブルーチンの引数の取り方も参考になるだろう。文字列の比較、if-elseif文の書き方の例にもなる。Tkのコマンドの書き方は本家だから文句は言えない(^^;)

jpg/raku_tcl.jpgrakucopy2html.tcl Perl/Tkと最新のActiveTcl 8.4.9.0のウインドウの違いがわかるだろう。

[Web Development] Web Forms 2.0 対 XForms ?

W3Cに反旗というのは適切な表現ではないし、ピントはずれだ。XFormsはXMLだし、Web Forms 2.0はHTMLの拡張である。XFormsをXAMLやXULと比較するのはXMLという意味では、ある程度比較になるのだろうけど、XAMLやXULはGUIそのものを定義したりする、デスクトップ指向の言語であるのに対して、XFormsはWeb指向である。XFormsは、XHTMLやSVGで使用することを想定しているからだ。Web Forms 2.0の目的はHTMLの表現能力を拡張することだろう。XFormsを置き換えるものでもないし、XFormsのサブセットでもないということだ。現実問題として、HTMLの表現能力の向上は歓迎だ。早期にブラウザに実装してほしい。


[Web Development] HTMLとXML

Web Forms 2.0 の動きは、次はXMLとは言うけれど、HTMLも必要だという当然の方向性である。なぜなら、XMLは人が書きたいと思うようなものではない。machine-readableというよりは、むしろ、machine-writableな言語なのである。Web ServicesやRSSによってXMLは実用的なものになったが、基本的にスクリプトなどで、自動生成することによって使う。XMLはXHTMLやHTMLに変換して表示される。問題はXHTMLなのか、HTMLなのかということである。XHTMLは現状ではHTMLと同等の表現力しか持っていないために、現時点では、移行への必然性に欠けている。確認のために、XHTMLとHTMLのW3Cの動向をリストアップしておこう。


HTMLはXHTMLへ移行することが前提の動きになっている。XHTMLを使うことのHTMLに対する優位性を明確にすることは必要なのではと思う。サンプルを見る限りは趣味の問題レベルの違いでしかない。書く量が増える方向だし、文書構造を明確化するといっても、Human-readableの観点からはむしろ見難い。Machine-readableに関しては、XMLを生かせばよい。XHTML(XMLでもあるのだが)はHTMLの本質的な表現力を向上させることで移行を促すほうがよいだろう。データ指向を徹底したいなら、RDF/XML+XSLTのような方向性でよいのでは・・・(X)HTMLは文書表現の高度化、柔軟性の向上、容易さを目指すべきだと思う。スクリプトを少なくする方向は必ずしも可読性を上げるとは限らない。タグが多くなると可読性は落ちるのだから。Wikiなどで使われる簡易型のマークアップやスクリプト言語のドキュメント記述用のフォーマット言語などのほうが使いやすいとも考えられるが、標準化されていないために限定的なものにならざるを得ない。HTMLにおいても、特に表タグは可読性を落とすので、好ましいとは言えない。

「実践実用Perl」で紹介しているように、本更新日記では、HTMLの生成にdmlという簡易言語を使用している。dmlはHTML作成支援に徹している。簡易言語の形でデータを保存することはせずに、HTMLを標準形式として取り扱う。HTMLは表現と直接結びついているために、XMLから変換するよりも、そのまま使ったほうが自由度が高いからだ。データ構造を維持するために、構造に直接関わる部分は、dmlで自動変換した特定の書式のHTMLを使う手法である。RSSもHTMLから生成する。スクリプト言語によるテキスト処理を使えば変換は自由自在なわけで、現時点では、日記そのものの生成の容易さと表現の自由度の確保とテキストデータベースとしてのデータ構造の維持とのバランスを取る最適な手法と考えている。