«前の日記(2007年02月12日) 最新 次の日記(2007年02月14日)» 編集

Matzにっき


2007年02月13日 [長年日記]

_ [原稿] 書き下ろし

出張中にできているはずだった原稿第三弾。

今度は書き下ろしの文章。とはいえ、 以前に書いた雑誌記事をベースにいろいろと書き加えたもの。 でもねえ、正直品質が高くないなあ。 自分で書いててノらなくてさ*1

やっぱ、書き下ろしは難しいなぁ。

*1  とか書くと編集の人が青くなるかも

_ Sup

コンソールベースのGMail風メールクライアント。

morqとかぶるのでかなり関心がある。ただ、こういうツールの場合、

  • 日本語が使えるか
  • Emacsが使えるか

という点が(私にとっては)大変重要なので、たいてい使えなかったりする。 今回のSupもコンソールベースで海外産ということから たぶん無理だろう。まあ、だからわざわざmorqを作ったわけだが。

でも、ソースコードとか参考にできるかもね。

_ [Ruby] Gardens Point Ruby.NET Compiler

オーストラリア産のRuby.NETコンパイラ。 マイクロソフトに移ったJohn Lamのとは違うもののようだ(彼はカナダ人)。

そういえばJohn Lamは、Redmondへの移動でえらい苦労しているそうだ。

_ [言語] 言語の設計に関する5つの問題

lionfanさんによるPaul Grahamのメモの翻訳。 オリジナルは2001年のMITのパネルディスカッション用のメモ。 2001年のMITといえばLL1を思い出すが、あれは秋だったはず。 これは5月10日だそうだ。

今回の内容はだいたいは「Being Popular」と共通(時期も同じだし)だが、 価値は下がってはいない。

その1:基本原則

  1. プログラミング言語は人間のためのものだ
  2. 自分自身と仲間のために設計せよ
  3. プログラマにできるだけ自由を与えよ
  4. 短く書けるようにしろ
  5. ハックを認めろ

「それなんてRuby?」という気がするが、 この当時PaulはRubyを知らなかったはず。 また、「ハックを認めろ」には 当然のように「言語内言語」や「マクロ」を含んでいるのが Lispハッカー。

その2:未解決問題

  1. 大きなライブラリを構成する方法
  2. みんなは本当に前置記法を怖れているのだろうか
  3. サーバ・ベースのソフトウェアには何が必要か
  4. まだ発見されていない抽象的な概念はあるだろうか?

「サーバ・ベースのソフトウェア」という概念に ちょっと2001年と言う時代を感じさせる。 この後、歴史はAJAXなどでクライアントに揺り戻すのだ。 歴史は繰り返す。

そして、「みんなは本当に前置記法を怖れて」いる。 もちろん、この命題の真偽は「みんな」の定義の取り方によるのだが。w

その3:ほとんど知られていない秘訣

  1. 好きな言語を使ってよい。
  2. スピードアップにはプロファイラが重要
  3. 言語の設計を方向づけるアプリケーションが必要だ
  4. 言語は書き捨てのプログラムを書くのに適しているべきだ
  5. 文法が意味論と結びついている

その4:昔のアイデアの復活

  1. 新しいプログラミング言語
  2. タイム・シェアリング
  3. 効率

正直なところ、新しい言語に関するPaulの予想は外れています。 残念なことに。

私は21世紀になってから生まれた 将来有望と注目されている言語を知りません。 あえて言えば...Fortress?

その5:落とし穴

  1. クライアント
  2. オブジェクト指向プログラミング
  3. 設計委員会

«前の日記(2007年02月12日) 最新 次の日記(2007年02月14日)» 編集