ランタンを持った狂気の男

The madman with a lantern -- ランタンを持った狂気の男

The Madman. Have you ever heard of the madman who on a bright morning lighted a lantern and ran to the market-place calling out unceasingly: "I seek God! I seek God!" As there were many people standing about who did not believe in God, he caused a great deal of amusement. Why? is he lost? said one. Has he strayed away like a child? said another. Or does he keep himself hidden? Is he afraid of us? Has he taken a sea voyage? Has he emigrated? - the people cried out laughingly, all in a hubbub.

狂気の男 ―― あなたはこんな狂気の男のウワサを聞いたことがあるだろうか。彼は真昼間からランタンを灯し,広場を走り回りながらひっきりなしに叫んでいた。「私は神を探している。私は神を探している」ちょうど,神など信じてはいない集団がうろついていたので,彼は笑い者になった。それで,神は行方不明なのか?と一人が聞く。子供みたいに迷子になってしまったのか?ともう一人が聞く。隠れん坊でもしているのか?我々が怖いのか?海の向こうへ行ってしまったのか?移住したのか? ―― などと,集団は口々に嘲り笑った。

The insane man jumped into their midst and transfixed them with his glances. "Where is God gone?" he called out. "I mean to tell you! We have killed him, you and I! We are all his murderers! But how have we done it? How were we able to drink up the sea? Who gave us the sponge to wipe away the whole horizon? What did we do when we loosened this earth from its sun? Whither does it now move? Whither do we move? Away from all suns? Do we not dash on unceasingly? Backwards, sideways, forwards, in all directions? Is there still an above and below? Do we not stray, as through infinite nothingness? Does not empty space breathe upon us? Has it not become colder? Does not night come on continually, darker and darker? Shall we not have to light lanterns in the morning? Do we not hear the noise of the grave-diggers who are burying God? Do we not smell the divine putrefaction? - for even Gods putrify! God is dead! God remains dead! And we have killed him!

その集団の中に飛び込み,睨みつけ,彼は叫んだ。「神が何処へ行ったかって?我々が神を殺したのだ ―― お前等と私がだ!我々はみな神の殺害者だ。しかし,どうやってのけたのだ。どうやって海の水を飲み干したのだ?だれが我々に完全な水平線を拭き取るスポンジを与えたのだ?地球を太陽の束縛から解いた時,何をしたのだ?どっちに動いているのだ?どっちに動かしたのだ?どの恒星からも遠ざかる方へか?落下してはいないか?後ろか,横か,前か,四方八方か?まだ,上はあるのか?下はあるのか?無限の無を抜けたら,迷子になってしまうのではないか?そこは我々の生きている宇宙空間ではないのではないか?冷え切ってはいないか?何度も何度も,夜が来てはまた夜がくるのではないか?真昼間からランタンを灯さなくてはならないのではないか?神を葬っている者の物音が聞こえてはこないか?ステキな腐臭が漂ってはこないか? ―― 神だって腐る!神は死んだ!神は死んだままだ!それも,我々が殺したのだ!

How shall we console ourselves, the most murderous of all murderers? The holiest and the mightiest that the world has hitherto possessed, has bled to death under our knife - who will wipe the blood from us? With what water could we cleanse ourselves? What lustrums, what sacred games shall we have to devise? Is not the magnitude of this deed too great for us? Shall we not ourselves have to become Gods, merely to seem worthy of it? There never was a greater event - and on account of it, all who are born after us belong to a higher history than any history hitherto!" Here the madman was silent and looked again at his hearers; they also were silent and looked at him in surprise.

我々,全くしょうがないその殺害者は,どうすれば安らぎを見いだせるのだ?今まで世界に居座っていた最も神聖で最も偉大なモノは,我々のナイフのもと,血を流して死んでしまった ―― 誰が我々に付いた血をぬぐい去ってくれるのだ?何という水でなら,我々を綺麗にできるのだ?何というみそぎを,何という催しをでっちあげるべきなのだ?この行為は我々には荷が重すぎるのではないか?これを行うのに最もふさわしい役を演じるのには,我々自身が神になるべきではないのか?これほどまでに大きな偉業は今まで一度だってなかった ―― そして,それを勘定に入れれば,我々の後に生まれる誰しもが,今までに積み上げられてきたどの時代よりも,高度な黄金時代を生きていくことだろう!」ここで,狂気の男は口をつむぎ,聴衆に目を向けた。面食らったかのように,彼らもまた黙り込んで彼を見つめていた。

At last he threw his lantern on the ground, so that it broke in pieces and was extinguished. "I come too early," he then said. "I am not yet at the right time. This prodigious event is still on its way, and is traveling - it has not yet reached men's ears. Lightning and thunder need time, the light of the stars needs time, deeds need time, even after they are done, to be seen and heard. This deed is as yet further from them than the furthest star - and yet they have done it themselves!" It is further stated that the madman made his way into different churches on the same day, and there intoned his Requiem aeternam deo. When led out and called to account, he always gave the reply: "What are these churches now, if they are not the tombs and monuments of God?"

しまいには,彼はランタンを地面に投げつけて,コナゴナにし灯りを消して,叫んだ。「早くきすぎたのだ。まだ時ではなかったのだ。この途方もない事柄は,あてもなくさまよい,いまだ道の途中にあるのだ」―― 彼の叫びが聴衆の耳に届くことはなかった。稲妻と雷は時間を必要とする;星の光は時間を必要とする;時間を必要とする事柄は,成された時から遙か後になって,我々の目と耳に届く。この途方もない事柄は最果ての星よりも遥か彼方にある ―― それで,彼らもこの例に漏れなかった。後の話によれば,その日,狂気の男はいくつもの教会に押入り,神への鎮魂歌(レクイエム)を捧げ回った。追い出され理由を聞かれる度に,「教会が神の墓でも記念碑でもなければ,いったい何だと言うのだ!」とだけ,言い続けた。

Skype4 のログをテキストファイルに書き出す

Skype4は`/htmlhistory`が使えなくなっているようなので,ログを取り出す方法を調べました。

ログデータの場所

  • %USERPROFILE%\Application Data\Skype\user\main.db

ログファイルの中身

main.dbはsqlite3データべースです。ユーザー名,コメント,時間はぞれぞれ,テーブルMessagesのfrom_dispname,body_xml,timestampというカラムに保存されています。

コード

次のようなコードでログをテキストファイルに書き出せます。(ただし,Skypeは終了しておくこと)

コマンド
>dir %USERPROFILE%\Application Data\Skype\user
>sqlite3 main.db "select from_dispname, body_xml, timestamp from Messages" > skype.txt

プログラミング Scala - はしがき

この文章は「Programming Scala」の文章の一部を翻訳したものです。つぎのライセンスに従います。
Creative Commons License
This work is licensed under a Creative Commons Attribution-Noncommercial 2.1 Japan License.

Preface

「Programming Scala」は モダンなオブジェクトモデル,関数プログラミング,そして高度な型システムの全ての利点を提供する エキサイティングな新しい言語を紹介する。コード例が沢山詰まっていて,この包括的な本は どうすれば直ぐに生産的になれるのかをあなたに教えて,そして 何がこの言語を 今日のスケーラブルで,分散型の,分散同時並行処理(concurrency and distribution)をサポートするコンポーネントベースアプリケーションに適したものにしているのかも説明する。また あなたは どの様にしてこの言語が プログラミング言語のプラットフォームとしての高度なJava仮想マシンの長所を 取り込んできるのかを学ぶだろう。

programmingscala.com や 本のカタログページでもっと学べる

Welcome to Programming Scala

プログラミング言語は様々な理由により人気になる。しばしば,与えられたプラットフォームに接しているプログラマは特定の言語か,ベンダーにより規格化された言語を好む。多くの Mac OS プログラマObjective-C を使い。多くの Windows プログラマC++ .NET 言語を使い。多くの組み込みシステム開発者は C と C++ を使う。

しばしば,工学技術の成果によりもたらされる人気は 熱狂と流行に方向性を与える。C++Java,そして Rubyプログラマの間の熱狂的な信仰の対象だ。

しばしば,或る言語は人気になる なぜならそれがその時代のニーズに合っていたからだ。当初 Java はブラウザベースのリッチクライアントアプリケーションに完璧に合っていると見られていた。Smalltalkオブジェクト指向モデルのプログラミングが主流になったときに そのモデルのエッセンスを捕らえていた。

今日,同時並行性,heterogeneity,常に稼動するサービス,そして いつも短く早歩きのスケジュールの興味の対象は 関数プログラミングの中だ。それはおそらく オブジェクト指向プログラミングの優位性を越えると思う。パラダイムを混ぜ合わせることは人気なだけではなく,不可欠だ。

私たちは他の言語から Sclala に引き寄せられた なぜなら Scala は今日私たちがビルドする類のアプリケーション(信頼性,ハイパフォーマンス,高集中型のインターネットやエンタープライズアプリケーション)のための汎用プログラミング言語の中に欲しいと思う最適なクオリティを 実現している。

Scala はマルチパラダイム言語で,オブジェクト指向関数プログラミングの両方をサポートしている。Scala はスケーラブルで,小さなスクリプトから大きなスケールのコンポーネントベースアプリケーションまでの全てに適している。Scala は先進的だ,世界中のコンピューターサイエンス学科の学部から最先端のアイディアを組み込んでいる。それにもかかわらず Scala は実用的だ。この作者は,Martin Odersky,Java の開発に数年関わっていてプロフェッショナルな開発者のニーズを理解している。

私たち二人は Scala による簡潔で,エレガントで,表現力豊かなシンタックス及び私たちが自由に使えるそのツール群の広さに魅了させられた。

もし あなたが,早く徹底的な解説が欲しいと思う,経験豊かなプログラマなら,この本はあなたの為のものだ。あなたは あなたの現状の言語の補助か代わりとして Scala の価値を見極めるだろう。もしかすると あなたは既に Scala を使うと決めていて あなたは その特性とどのように使えば良いのか学ぶことをご所望だ。どちらにせよ,接しやすい方法で 私たちはこのパワフルな言語をあなたに啓蒙する。

私たちはあなたがオブジェクト指向プログラミングに良く精通していることを想定するが,私たちはあなたが事前に関数プログラミングに接していることを想定しない。私たちはあなたは一つ以上の言語の経験があることを想定する。私たちはJavaC#Ruby,そして他の言語との類似を引き合いに出す。もし あなたがそれらの言語の幾つかを知っていれば,私たちは Scala の特徴を類推して指摘するほうが 沢山の新しい特徴を指摘するよりも 簡単だ。

オブジェクト指向(Object-Oriented Programming:OOP)か関数プログラミング(Functional Programming:FP)のバックグラウンドのどちらから来たとしても,それらの相補性の実際の説明で,あなたは Scala が どの様にエレガントに両方のパラダイムを兼ね備えているかを見ることが出来る。沢山の例を使って,あなたはどこでどの様にして 多くの異なったデザイン問題に OOP と FP のテクニックを応用するのかを理解するだろう。

最後に,私たちはあなたが Scala に魅了されることを望んでいる。Scala が最終的にあなたの日々の言語にならないとしても,私たちは あなたが使う何かの言語によらず応用できる洞察力を獲得してほしいと思う。

Conventions Used in This Book

(以下はオライリーの本のいつもの文章なので省略)

emacs用のファイルブラウザ emacs-nav がいい感じ

emacs-navTextMate のファイルブラウザや Eclipse のプロジェクトビューに似たようなものを emacs に提供するプログラム。


次のようにして最新版を落してきて,nav.el をパスが通ったところに置いておく:

svn checkout http://emacs-nav.googlecode.com/svn/trunk/ emacs-nav

.emacs:

(require 'nav)
(setq nav-split-window-direction 'vertical) ;; 分割したフレームを垂直に並べる
(global-set-key "\C-x\C-d" 'nav-toggle)     ;; C-x C-d で nav をトグル

ここで,`M-x nav-toggle` とすれば nav が表示される。もう一度繰り返せば nav が閉じる。`C-x C-d` にバインドしておくと良いかもしれない。
nav には,開いたときのバッファのカレントディレクトリのファイル一覧が表示される。一般的なファイルブラウザと違って,一度に一つのディレクトリ内のファイルしか表示できないけど,`f` でファイル名を再帰的に検索したり `g` でファイル内を grep したり出来る。
nav を開けば,nav のフレームと開いたときのフレームだけが平行に並んで表示される。
nav の操作は簡単で,すべて一つのキーで操作する:

  • ファイル名の上で `1` か `RET` を打てば,そのファイルを隣のバッファに開く
  • ファイル名の上で `2` を打てば隣のバッファが一つだけであれば分割して,そこに開く
  • `v` と打てばファイルをリードオンリーで開き `q` でそのファイルを閉じる

これら以外にもファイルの削除やコピーといった基本的なファイル操作が可能で,完全な操作方法は nav を開いて `?` を打つと表示される。また,このサイトでも確認できる。

color-theme で emacs のカラー設定を変える

color-theme をインストールすれば,自分でシンタックスの配色を設定しなくても,沢山の配色設定がテーマのような形で提供され,その中から好きなテーマを選ぶことが出来るようになる。沢山のテーマが標準でインストールされるが,もちろん,ネットから有志が公開しているテーマを探して使うことも出来るし,自分で作った配色を公開するのにも便利そうだ。

color-theme は次のサイトから入手できる:

解凍して:

wget http://ftp.twaren.net/Unix/NonGNU/color-theme/color-theme-6.6.0.tar.gz
tar xzvf color-theme-6.6.0.tar.gz

color-theme.el と themes/ をパスが通ったところに置く:

cd color-theme-6.6.0
cp color-theme.el ~/.emacs.d/elisp
cp themes/ ~/.emacs.d/elisp

.emacs に次のように書き足して color-theme を有効にする:

(require 'color-theme)
(color-theme-initialize)

`M-x color-theme-select` と打つと標準でインストールされているテーマの一覧が表示され`RET`でテーマを変更できる。

気に入ったテーマを常に使いたいなら,.emacs にさらに次の行を加える:

(color-theme-initialize) ;初期化
(color-theme-twilight)   ;テーマ名

僕は TextMate の配色が綺麗だなーと思っていて,color-theme のテーマを探してみたら幾つか見つけることが出来た:

一番目のサイトで公開されているテーマが気に入ったのでそれを使っている。