スキップしてメイン コンテンツに移動

言語再考

言語設計者たちが考えること (THEORY/IN/PRACTICE)『言語設計者たちの考えること』を読んだ。本書は、下記プログラミング言語の設計者へのインタビュー集。括弧 () 内がインタビュイーとなった設計者。
  1. C++(ビャーネ・ストラウストラップ)
  2. Python(グイド・ヴァンロッサム)
  3. APL(アディン・D・フォークオフ)
  4. Forth(チャールズ・H・ムーア)
  5. BASIC(トーマス・E・カーツ)
  6. AWK(アルフレッド・エイホ、ピーター・ワインバーガー、ブライアン・カーニハン)
  7. Lua(ルイス・エンリケ・デ・フィゲイレード、ロベルト・イエルサリムスキー)
  8. Haskell(サイモン・ペイトン・ジョーンズ、ポール・ヒューダック、フィリップ・ワドラー、ジョン・ヒューズ)
  9. ML(ロビン・ミルナー)
  10. SQL(ドン・チェンバレン)
  11. Objective-C(ブラッド・コックス、トム・ラブ)
  12. Java(ジェームズ・ゴスリン)
  13. C#(アンダース・ヘルスバーグ)
  14. UML(イヴァー・ヤコブソン、ジェームズ・ランボー、グラディ・ブーチ)
  15. Perl(ラリー・ウォール)
  16. PostScript(チャールズ・ゲシキ、ジョン・ワーノック)
  17. Eiffel(バートランド・メイヤー)
  18. Ruby(まつもとゆきひろ)
多少なりとも馴染みがあったり、関心があったりした章を拾い読みした。読んだのは、18章のうち、14章。具体的には、C++, Python, BASIC, AWK, Haskell, ML, SQL, Objective-C, Java, C#, UML, Perl, Eiffel, Ruby。

多くの言語設計者たちが、機能を増やさないことに腐心していたことがよく分かる。それが如実に表れているのが、「2章 Python」。関連して、「6章 AWK」でブライアンは、
小さな言語が抱えている最大の問題は、それがどんどん成長していくという点にあります。
と言っている。これは、『人月の神話』「第5章 セカンドシステム症候群」が指摘している問題にも似ている。

やり過ぎたと設計者の一人が言っているのが、「第14章 UML」。UMLは詳細が膨大な割に、そこまで書いても実装に落とせない。だから、UMLからコード生成なんて酷いアイディアだと言っている。でも、一方でもう一人の設計者は「2種類の言語を使う根本的な必要性はありません」なんて言っている。自分の感覚では前者が正しいと思う。『UMLモデリングのエッセンス』で、Martin Fowlerが言っているように、コードやアイディアが先にあった上で、コミュニケーションのためのスケッチに使うのが、コストパフォーマンスが高い。

UMLに限らず、プログラムに関わるものはすぐにプログラムになろうとする傾向にあると思う。「13章 C#」で「12章 Java」のゴスリンのこんな言葉が引かれている。
Goslingは、すべての構成ファイルはそれ自身がプログラミング言語になっていってしまうと言っていたと思います。それは非常に正しい、そのことには本当に気をつけた方がいいでしょう。
この傾向はなんなんだろう? 「17章 Eiffel」が実装する〈契約による設計〉はおろかユニットテストも書けないものを、実装としてしまうのに、大きな危険を感じるのだけれど。

このブログの人気の投稿

神のいぬ間の選択 - マギ(37)[完]

『マギ(37)』を読んだ。これにて完結。 この巻だけに関して言えば悪くなかった。最終章に入ってからここに至るまでが、自分にはついていけなくて悪い意味で超展開だったのだけれど。 完結巻ということで、どんな話だったっけかざっと振り返ってみた。 1~2巻 アラジン、アリババ、モルジアナが出合って、迷宮 (ダンジョン) 攻略。アリババがジン・アモンに選ばれる。そのあとバラバラに。 3~8巻 3人が合流してバルバッド編。アル・サーメンの存在が明るみに出る。合流するまでにアラジンと煌帝国の白瑛が出合う (3巻)。紅玉、ジュダルの登場もこの時期。 9~12巻 一行はシンドリアへ。そこでアラジンがマギとして、アリババに力を貸す宣言をする (9巻)。白龍登場。アラジン、アリババ、モルジアナといっしょにザガンの迷宮へ。迷宮攻略後、再びアル・サーメンと対峙。撃退後、アラジンはマグノシュタットを、モルジアナは故郷を目指す。アリババは悩み中。白龍も帰国。紅覇、紅名、紅炎の顔見せ (12巻)。 13~15巻 シンドバッドが紅玉との模擬戦でゼパルの能力を使う(13巻)。アリババはレームへ行くことへ。一緒に出発するも、解散する前に海賊に襲われる。ここで白龍の目的が母・玉艶の殺害と判明。レームのアリババ、ユナンの元を訪れたモルジアナ、煌帝国に帰国した白龍のエピソードを挟み、マグノシュタット編開始。 16~20巻 マグノシュタット編。端折ると、世界統一を目指す煌帝国が攻めてきたが、マグノシュタットの反撃手段が、アル・サーメンに仕組まれていたためイル・イラーを降臨させかねない事態に。両国が協力、アラジンも駆けつけ、シンドバッドも介入。一緒にモルジアナとも再会。最終的に、アラジンがソロモンの知恵を使い、イル・イラー降臨の依り代となっていたマグノシュタット学長たちのルフを還して、事態が収束する。 21~24巻 アリババがバルバッドの状況を見て煌帝国・紅炎に、紅玉にゼパルを仕込んでいることを知りシンドバッドに相容れないところがあると知る。そしてアルマトラン編突入。紅炎が協力の見返りに、アラジンからアルマトランの秘密を聞き出す形で始まる。結果的には、ダビデが意図的に息子ソロモンに負ける。ソロモンが世界の法則を変えた代わりに人間性を失う。ソロモンの妻であり、マギの一人でもあるシバが采配を奮う...

北へ - ゴールデンカムイ 16

『ゴールデンカムイ 15』、『〃 16』を読んだ。16巻を読み始めてから、15巻を買ったものの読んでいなかったことに気がつく。Kindle版の予約注文ではままあること。 15巻は「スチェンカ・ナ・スチェンク」、「バーニャ(ロシア式蒸し風呂)」と男臭いことこのうえなし。軽くWebで調べてみたところ、スチェンカ・ナ・スチェンク (Стенка на стенку) はロシアの祭事マースレニツァで行われる行事のようだ[1]。それなりになじみ深いものらしく、この行事をタイトルに据えたフォークメタルStenka Na StenkuのMVが見つかった。 16巻では杉元一行は巡業中のサーカスに参加することになる。杉元と鯉登の維持の張り合いが、見ていて微笑ましい。鯉登は目的を見失っているようだが、杉元もスチェンカで我を失っていたので、どっこいどっこいか。なお、サーカス/大道芸を通じた日露のつながりは、実際にもこのような形だったようだ[2]。 個々のエピソードから視線を上げて、全体の構図を眺めてみると、各勢力がすっかり入り乱れている。アシㇼパは尾形、キロランケ、白石とともにアチャの足跡を辿り、そのあとを鶴見のもとで家永の治療を受けた杉元が鯉登、月島を追っている。今更だけれど、杉元やアシㇼパは、第七師団と完全に利害が衝突していると考えていないはずだった。一方で、土方一味も入墨人皮を継続。むしろ彼らの方が第七師団との対立が深刻だろう。さらに北上するキロランケはまた別の目的で動いているようだけれど、なんで尾形も一緒なんだっけ? 『進撃の巨人』に引き続き、これもそろそろ読み返す時期か。 [1] 5つの暴力的な伝統:スラヴ戦士のようにマースレニツァを祝おう - ロシア・ビヨンド [2] ボリショイサーカスの源流は、ロシアに渡った幕末日本の大道芸人たちにあった 脈々と息づく「クールジャパン」 | ハフポスト

私は今、感想を書き終えた - あなたは今、この文章を読んでいる。

『あなたは今、この文章を読んでいる。:パラフィクションの誕生』を読んだ。この本はSFマガジンに16回に渡り連載された「パラフィクション論序説」が単行本化されたもの。 二部構成となっており、第1部「メタフィクションを越えて?」では「過去三十年ほどの時代的な変化と干渉し合い浸透し合うにつれて、どうもあまり望ましいとは言い難い「作者/読者」としての心性が醸造されてきたのではないかと思われる」問題が扱われる。第2部「パラフィクションに向かって」では、その「望ましからざる「心性」」を乗り越えようとしている「メタフィクション」から「パラフィクション」という概念の抽出が試みられる。 プロローグにはそんなことが書かれているのだけれど、その問題が具体的には何なのかも、「パラフィクション」がどんなものでその問題をどう解決するのかも、いまいちクリアにならなかった。 ざっくり整理してみよう。 まず発展の歴史。最初は「虚構」から「現実」に引き戻す「批判的メタフィクション」だった。次に「現実」に「虚構」を持ち込む「関与的メタファクション」へ派生した。さらに「虚構」化した「現実」を再度「虚構」として提示する「受容的メタフィクション」へと変遷した。これがこの本の歴史観。 次にこの変化を通して醸造されてきた(作者にとって)望ましくない「作者/読者」としての心性。作者にとっては、「メタは「作者性」への反省、批判、解体を企図しているかに見えて、その実、やればやるほど「作者」の機能と専制を確認することになっしまう」ことを問題視している[1]。読者にとっては、「虚構」化された「現実」の受容が、現状への批判意識の抑圧につながりかねないことを問題視しているようだ。 それで、「パラフィクション」は「軸足を、思い切って「作者」から「読者」へと引き渡す」ことのようだ。ただし、読みの多様性などにフォーカスして、「読者」の名の下に「作者性」を奪取するという話ではないとのこと。作者のいう「パラフィクション」的な作品として円城塔の『Self-Reference ENGINE』が取り上げられる[2]。 まず思ったことは「これ問題か?」という疑問。そういう本しかなくなる=言論統制が図られたらと思うと背筋が凍るが、これはメタフィクション小説についての話だ。次の「パラフィクション」についてはよくわからない...