言語設計者たちが考えること
Mastermind of Programming
Federico Biancuzzi / Shane Warden
伊藤真浩 / 頃末和義 / 佐藤嘉一 / 鈴木幸敏 / 村上雅章訳
[原著:Masterminds of Programming]
リクエストにお答えして。
@dankogai あたりが http://t.co/jbKKocjD を「はてなブログ発・初ツッコミ対象」として、なにかを弾言してくれそう
個人的には、「世界中で使われるサービスを作りたい」といってる開発者のマシンをみて、キーボードがJISだったりOSが日本語だったりすると、もうその時点でかなりガクッときます。
これを見て真っ先に思い出したのが、この台詞。
アルベルト・アインシュタイン - Wikiquote
- 常識とは、18歳までに身に付けた偏見のコレクションである。
- Common sense is the collection of prejudices acquired by age eighteen.
私もまた、英語環境という偏見を18歳までに身につけたものの一人である。私が初代Honda Civicを売ってMacintosh SE(/30ではない)を入手したのも、確か18歳のとき(17だったかな。ちょっと曖昧)。買った当初はそもそも日本語を扱えなかった。メモリーを1MB(GBじゃないよ)から4MBにして漢字Talkが動いた時には感動したなあ…
ありがたいことに、私はこの偏見を捨てずに今までやって来れた。「JISキーボードしか選択できない」という状況はMacにはついに来なかったし、id:kennejimaも言うようにOS X以前もLanguage Kitがあったし。私が購入した数少ないWindows PCも、Digital HiNoteをはじめ英語キーボードへの換装可能なものばかり。その分高価格の環境を強いられたとも言えるけど、それを遥かに上回る果実をこれらはもたらしてくれた。この偏見に留まったおかげで私は妻子を得ることができたというのは過言ではない。
しかしなぜその偏見に留まれたかといえば、逆説的ではあるがそれが偏見であることを忘れないようにしてきたからだと弾言できる。もちろん「一瞬たりとも忘れない」なんてことはまるでなくて、つい最近もこんなことがあったばかりなのだけど。
そして言語というのは、常識という名の偏見の中で最強なのではないか。自然言語にしろ電脳言語にしろ。英語であれ日本語であれ、CであれLispであれ、いずれかの偏見を身につけなければ、そこで生きて行けないという意味において。
私がPerlが好きなのは、言語そのものよりその使い手が他のどの言語の使い手よりこのことに自覚的--に少なくとも感じられる--からかも知れない。例えば
Excel列名変換問題で第2回社内プログラミングコンテストを開催してみた(前編) - ITは芸術だ
- 仕様
- 入力されたアルファベットを数字に変換する。
- 変換ルールはExcelの列名と同等。
- 例) A=1、B=2、Z=26、AA=27、XFD=16384
に対し、私は
はてなブックマーク - Excel列名変換問題で第2回社内プログラミングコンテストを開催してみた(前編) - ITは芸術だ
perl -E '$n=$n*26-64+ord for split//,shift;say$n' XFD
という「常識的」なワンライナーを提示したが、
perl -E 'say scalar @{["A" .. shift]}' XFD
というのを提示する人がほぼ必ず出てくる。変態といえば変態だが、変態であることはPerlコミュニティにおいては褒め言葉である。不思議なもので、言語仕様の変態許容度の大きさは、言語コミュニティの変態許容度の大きさと必ずしも相関しない。変態許容度の大きさにおいてrubyはperlにひけを取らないし、変態をもてはやす文化もないわけでもないのに、それでも「おとなしい」コードが多いのは私にはちょっとした不思議でもある。
偏見、あるいは常識というのは家のようなもので、それなしに暮らせるほど強い人はまずいない。しかしそこだけが世界だと思い込むのもまた危険であることを、今年ほど強かに教えてくれた年はなかったなのではないか。
震災で多数の人命とともに多くの常識が失われ、そして世界一偏見の常識化に成功した人物が亡くなった、今年ほど。
Text of Steve Jobs' Commencement address (2005)You are already naked. There is no reason not to follow your heart.
And home is where your heart belongs.
Dan the Prejudiced
このブログにコメントするにはログインが必要です。
さんログアウト
この記事には許可ユーザしかコメントができません。