Smalltalkのtは小文字です

id:sumim:about

オブジェクト指向の“モヤッと”の正体を知りたくなったら、id:sumim:20040525:p1 がお役に立つかも…。


 | 

2008-01-13

[] 本当に Mac は“the first computer with beautiful typography”なのか?


追記: Alto と言えば Star …と短絡する向きは特に Mac 関係者に意外と多く、そうした方々がここを Star の話であるとの思いこみで読まれるといけないので最初にお断りしておくと、Star と、ここで紹介している Interim Dynabook(すなわち、ハードとしての Alto と、OS としての Smalltalk を組み合わせた製品)とは別物です。両者ともに同じ XEROX の成果物ですが、しかしそれぞれ、開発部門(SDD vs PARC)も、仕組み(Mesa vs Smalltalk)も、GUI の操作スタイル(対象選択はマウスだが命令には専用キーを使用 vs 命令もメニューで指示)も、目的(ビジネス vs パーソナル)も異なる、まったく別のコンピュータ環境なのです。Lisa や Mac は、広く信じられているような Star からの影響も皆無ではない(たとえばアイコンベースのファイラ 〜つまりファインダやゴミ箱〜 などにその片鱗が見られる…)ものの、その GUI の操作スタイルやルック&フィールは総じて、直接的には Smalltalk の影響(オーバーラップウインドウやそれそれが備えるべき機能、メニューを介した指示、テキスト編集における選択→命令というモードレスな操作スタイル、アプリケーションをまたいで使えるバッファ 〜俗にクリップボード〜を介したカット&ペースト、ドット単位で拡大編集可能なペイント機能、マルチスタイルで WYSIWYG なワープロ機能などなど… →参考映像)を受けて作られています。このことは、現在主流の GUI の歴史に関わるごく基礎的な知識として頭の片隅においていただければと思います。


404 Blog Not Found:再び紹介 - Stay Hungry, Stay Foolish 経由で知ったのですが、ジョブズのスタンフォードでの有名なスピーチに字幕が付いたとのこと。これに伴って上のセリフが、より多くの人々の目に触れる機会が増えると思ったので、いやいや、かつて Mac より遙か以前に「暫定ダイナブック環境」というものが存在したのだよ、ということをアピールする目的とスモールトーク(けっして、言語や開発環境というだけではない…!)の宣伝をかねて便乗(^_^;)。


くだんのスピーチは全体をとおして示唆に富む良い話なんで、ホントはケチなんかつけたくないんです。でも、暫定ダイナブック(=アルト+スモールトーク)のいちファンとしては、どうにもこのセリフだけは聞き捨てなりません。いや。例によってジョブズは必ずしも“嘘”は言っていない(たとえば、販売価格など範囲をしぼればたしかにそうですし…)のですけれども、冒頭のセリフを目耳にしたジョブズファンや Mac ファンの多くは、ほぼ確実に、


マルチフォント機能はジョブズの発案で、その結果、Mac がマルチフォントをシステムレベルで搭載した初めてのコンピュータとして誕生したわけか!

といったふうに誤った見解へ誘導されると思います。(ブクマで指摘があったので念のため。ここで「マルチフォント機能」は単に複数のフォントを使い分けられるというだけの意味ではなく、文字毎に複数のフォント〜プロポーショナルデザインの…を含む〜やサイズ、スタイルを変更でき、かつ、パラグラフ毎の行揃えなどの変更も可能で、文書には絵も挿入できる、見た目の美しい文書をインタラクティブでモードレスな WYSIWYG 環境で仕上げる機能を、アプリケーションレベルではなく、OS レベル〜俗に言う API レベル〜で提供できている…こと、を象徴的に表わすのに用いています)


たしかに Mac が存在しなければ、他でもない現在主流のスモールトーク的な GUI やそのルック&フィール(ここでのマルチフォントを含む…)がここまで世の中に広まることはなかったはずで、そのことにはいちファンとしてとても感謝しています。でも、聴衆が勝手に思いこむのをいいことに、暫定ダイナブックの成果をあたかも自分たちが“無”から生み出した手柄であるかのように世に広めてしまうのは、なんだか違うような気がするのです。

Apple には他にももっと誇るべき他社には見られないオリジナリティ(たとえば、ともすれば埋もれてしまいがちな枯れた技術を発掘し、それらを絶妙な取り合わせで、こぎれいにパッケージングして市場に投入する力量とか!?(^_^;))があるわけなので、それを胸をはって自慢して欲しいとも思います。


ここではせめて、

「パーソナルコンピュータにマルチフォント」というアイデアやその実現が可能であるという確信自体は暫定ダイナブック環境から得たものだが、これから作る Lisa(ひいては Macintosh)にもそれを取り入れるべきだと私が決断できたのは、大学でカリグラフィーを学んでいたことが大きかった…

というふうにとれるようなことを言ってくれてさえいたら、ととても残念に思います。


念のため触れておくと、マルチフォントについては暫定ダイナブックでは、ジョブズたちが見た Smalltalk-76 のさらに前身の Smalltalk-72 のころから力を入れていた目玉機能のひとつで、このことはアラン・ケイの有名な論文「パーソナル ダイナミック メディア」の、暫定ダイナブック環境の解説の章(III. An Interim Dynabook)の冒頭で取り上げられていることからも分かります。次に同論文から該当部分の画像を抜粋します。


http://squab.no-ip.com/collab/uploads/61/st72multifont01.pnghttp://squab.no-ip.com/collab/uploads/61/st72multifont02.png
http://squab.no-ip.com/collab/uploads/61/st72multifont03.pnghttp://squab.no-ip.com/collab/uploads/61/st72multifont04.png
http://squab.no-ip.com/collab/uploads/61/st72multifont05.pnghttp://squab.no-ip.com/collab/uploads/61/st72multifont06.png

繰り返しになりますが、これらは Macintosh が発売されるじつに約10年前、ジョブズたちが PARC を訪れてデモを見る約5年前の、まだ古い暫定ダイナブック環境のスクリーンショットであることも驚きどころのひとつです。暫定ダイナブック(≒1970 年代のスモールトーク)の資料をひもとくとき、きまって「オーパーツ」という言葉が私の頭をよぎります。

あと、これらの画像だけだとマルチフォントじゃない(フォントが混在してない)じゃん!とケチがついてもいけませんので、念のため、すこし年代は下ってしまいますが(それでも十分 Mac はおろか Lisa よりも前です…)、1981 年の BYTE 誌に掲載された Smalltalk-80(あるいは Smalltalk-76。76 と 80 は言語仕様はともかく、その GUI やルック&フィールについては境界が曖昧です)の、ちゃんとフォントが混在して用いられている画像も載せておきましょう。


http://squab.no-ip.com/collab/uploads/61/st76multifont.png



ところで、「パーソナル ダイナミック メディア」といえば、その邦訳を収録した アスキー刊「アラン・ケイ」 が日本では有名ですね。もしかしたら、ここではじめて上の画像の存在を知り、同書には何度も目を通したがこんなのは見たことないぞ!と驚かれた「ダイナブック」通な方々もおられたかもしれません。 

実は同書は、原著にはふんだんに含まれているはずの図の多くを(おそらくスペースの都合で)ばっさり捨て去ってしまったうえに、収録されている論文自体も古い暫定ダイナブックの実装(つまり Smalltalk-72 システムやそこでの実践)についての言及の多くを省いたいくつかある“ショート”バージョンのひとつなのです。PARC からフルバージョンを取り寄せないと、同書から漏れた図版は目にすることができません。数年前に私が依頼したときは、PDF と別便でレーザープリンタ出力(なぜか PDF よりキレイ!)を無料で送ってくれました。興味のあるかたはぜひとも PARC に問い合わせてみてはいかがでしょう。

Personal Dynamic Media

Learning Research Group

March 1975

Page Not Found - PARC (Palo Alto Research Center)

あとこれは余談&ほんの言葉遊びにすぎないのですが、この種の「暫定ダイナブックはすごかったんだぞ!」的な情報が出てくると決まって「だが、暫定ダイナブックは製品化されていない」(Apple はそれを成し遂げたのだから偉い!)ということを捨て台詞に使う人が出てきます。でもこれは、完全にではないにせよ間違った認識です。スモールトークは、たしかにアラン・ケイの手を離れて暫定ダイナブック的な色合いこそ薄められてはいましたが、ちゃんとソフトウエア製品「Smalltalk-80」として販売されているからです。w

追記: ちなみに、この Smalltalk-80 の直系の子孫は、現在も Cincom より VisualWorks として継続して販売されています。かつて Smalltalk システムを(GUI というほんの表層に過ぎなかった特徴のみとはいえ)模倣して誕生した後発の Macintosh System よりも、Smalltalk がソフトウエア製品として息が長くあるということは、ある種、興味深い事実です。さらに、この Macintosh System(後の Mac OS)の後釜として奇しくも「Mac」の看板を背負うことになる Mac OS X の前身の NeXTSTEP は、ジョブズがかつて Macintosh System を GUI という Smalltalk の表層の模倣に終わらせてしまった(ゆえに Mac は「使うは天国、作るは地獄…」と揶揄された)反省のもとに、今度はより深い、システムレベルでの Smalltalk の模倣を念頭において開発されたという事実(これはジョブズ自身も認めていますし、実際、Cocoa の API は Smalltalk のそれとソックリです)もまた、なんとも不思議な巡り合わせではないですか!

まあ、仮に暫定ダイナブック環境が製品化がされていなかった…との判断が成り立ったところで、それをほぼそのまま模倣するのに十分な完成度で存在していたことを示すことができているわけですから、Apple 発と宣伝されて一般にはそう信じられているマルチフォント環境ほかが Apple やジョブズの発案ではないことを示すには十分…であると、いち暫定ダイナブック厨的には思うわけなのですけれどもね(^_^;)。

torustorus 2008/01/13 20:08 そういえば、うちの会社に何台か Symbolics があって、動くところを見せてもらったことがあるんですが、そこでも複数のフォントできれいにテキストが出ていました。これも Smalltalk の流れを汲む物なんでしょうか? でも実際、Lisp マシンを動かす感覚は、現代ではほとんど失われてしまったけど、強いて言えば Squeak がそれに近いかもって、元の持ち主の人が言っていたので、あたらずとも遠からずかな?

sumimsumim 2008/01/13 20:43 コメントありがとうございます。Symbolics のほうは、きちんと調べたわけではないですが、おそらく暫定ダイナブックの GUI とは無関係ではない(無関係ではいられなかった)と思います。Squeak Smaltalk は、XEROX Smalltalk-80 のサブセットである Apple Smalltalk をベースに拡張を施したもので、(いったんは Smalltalk から離れた)アラン・ケイも当初から係わっていることから、暫定ダイナブックと精神的に近い特色を(Smalltalk-80 の直系の Cincom Smalltalk より)残しているものと言えそうです。

beerdogbeerdog 2008/02/05 20:24 あの〜、私みたいに詳しくないものが、カキコして申し訳ないのですが、・・・。
sumimさんがおっしゃることは、よくわかりますが、AppleやJobs総帥が、そういったことを、改めて話すことはないとおもいます。
(多分、・・・)

ちょっと、例えが飛躍してしまうかもしれませんが、世界で初めて車を発明したのは、どのメーカだったかわかりませんが、ただ、そのメーカを尊敬はしますけど、実際に車に乗る際は、普通のひとは国産車の現在の車で、特に問題ない訳です。

Macを使おうが、Rubyを使おうが、いいわけです。そして、少なくとも、前者の作者は、自分がすべてを最初に作り出したとはいっていないとおもうんですが、・・・。いかがでしょうか?

sumimsumim 2008/02/05 23:24 ジョブズが、Smalltalk の(彼はこういうとき Alto の…と言ってしまうので、これはこれで困った誤解を助長してしまっているわけですが)GUI に驚いて、オブジェクト指向(システムの仕組み)とネットワークの重要性を見落としていたという反省を NeXT で活かした、という話のことでしょうか? これはさほど頻繁にというわけではありませんが、それでも比較的よく目耳にする事実ですよ。具体的には、

http://www.amazon.co.jp/dp/4839902259 の pp470-471 とか、
http://us.geocities.com/franktau/interviewpart3.html の「SJ: That’s the real gem.…」のくだりとかで読むことができます。

あと、「ただ、そのメーカを尊敬はしますけど」のところをまさに問題にしているつもり(つまり、Apple やジョブズは、その物言いにおいて、先達、しかも自分たちがちょくせつ模倣したものたちに対する敬意を欠いていやしませんか?という話)なので、後半のご指摘もちょっと私にはピンときません。ごめんなさい。 たとえに乗っからせていただけば、その国産車メーカーが、自社製品を作る際に模倣のため不可欠だった他社の成果や製品である車を、結果的に自社よりも売れなかったからというだけで欠陥品呼ばわりしたり、その存在自体を無視して歴史を語り出したら、それは違うだろ…ということにはなりはしませんか?

ちなみに、Smalltalk についてであれば、アラン・ケイは

http://gagne.homedns.org/~tgagne/contrib/EarlyHistoryST.html

で Smalltalk の様々なアイデアのうち、何が他者からの模倣で、何が自ら(あるいは共同作業者たち)のオリジナルなのかを明らかにしているわけです。Apple やジョブズに対しても、全部どり and/or パクリ元の disりを通じた自らのアドバンテージの主張に終始するのではない、別のアピールの仕方を個人的には期待したい、という主張をしたつもりですが、…。いかがでしょう?

beerdogbeerdog 2008/02/06 08:33 お返事ありがとうございます。

>>つまり、Apple やジョブズは、その物言いにおいて、先達、しかも自分たちがちょくせつ模倣したものたちに対する敬意を欠いていやしませんか?という話

おっしゃることは、理解しているつもりです。
ただ、わたしの最初のコメントでかかせていただきましたが、AppleやJobs総帥は、そういったことを弁明することはおそらくないのでは、とおもいます。(根拠があっていっている訳ではありませんが・・・)

sumimさんが、以前からこのような話をおりにふれてされているわけですが、とてもむなしく感じてしまうのは、わたしだけなんでしょうかね?

sumimさんは、以前、HyperCard関係の本を書いていらっしゃいますよね。(違ってたらすみません)
その本は、後で入手したものですが、わたしももっています。
少なくとも、以前は、Appleあるいは、Appleの作成物に、興味をもっていらっしゃったこととおもいます。

sumimさんの主張は、以前からの記事を読む限り、しごく、ごもっともなこととおもいます。
ただ、1アップルユーザのわたしは、Appleがわたしにとって魅力的な製品をだしてくれれば、おそらく、また手に入れるでしょう。
そして、わたしは、sumimさんのお話に納得しても、Appleにそのことでクレームを出すことも、おそらくないでしょう。

他の人が、sumimさんの記事を見てどう思うかはわかりませんが、なんか、このたぐいの記事を目にすると、とってもつかれてしまいます。
失礼とはおもいますが、もう、からわまりしている主張を何度も繰り返されるのは、いかかなものでしょうか?

sumimsumim 2008/02/06 09:10 「読み手として不愉快だからこういうことは書かないでくれ」ということですか?

beerdogbeerdog 2008/02/06 10:07 基本的には、そういうことです。(申し訳ありませんが・・・・)

なるべく、こちらには寄らないようにさせていただいてますが、今回、別リンクからたどって、また反応してカキコしてしまいました。
sumimさんが、このようなお話を主張されるのは、まったくのご自由なのは、私が申し上げるまでもありません・・・。

以上でございます。

sumimsumim 2008/02/06 10:59 そうでしたか。それは申し訳のないことになっていますね。ただ私としては、このブログの立ち位置を http://d.hatena.ne.jp/sumim/about を読んでご了解いただいたうえでひとつの意見として笑い飛ばして頂くか、さもなければ、これまでどおり極力ちかづくのを避けて頂くことをお願いするしかないです。私自身はけっして「変えられない」とか「からまわり」とは思っていない(むしろ、最近は変化への“手応え”すら感じています(^_^;))ので、ましてそれを理由に発言をやめることはないと思うので…。ごめんなさい。

squeakersqueaker 2008/02/06 11:17 別にクレームをいれろとかアップルのことを嫌いでなくてはいけないとかどこにも書いていないように思いますが。誰かの発言に注釈を入れていても、言っている人のことを「100%否定しているに違いない」と思うことはないと思いますよ。

歴史というのは勝者や声の大きい人が書けばよくて、その他の人は真偽やディテイルにはこだわらずに聞いておけ、というのは、あまり面白い意見ではないとは思います。

というわけで、sumimさんの書くことはいつも楽しみにしていますので、これからもがんばってください。

sumimsumim 2008/02/06 11:32 応援の言葉、ありがたいです。

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト

コメントを書くには、なぞなぞ認証に回答する必要があります。

 | 
2004 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2005 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2006 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2007 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2008 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 12 |
2009 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2010 | 01 | 02 | 03 | 04 |

最近のコメント

1. 04/26 機械伯爵
2. 04/26 sumim
3. 04/26 機械伯爵
4. 04/26 機械伯爵
5. 04/26 sumim

最近のトラックバック

1. 02/07 juner’s Diary - 今日のtwitter発言纏め
2. 02/07 燈明日記 - 基礎文法最速マスターカテゴリ
3. 02/07 なんとなく日記 - (基礎|変態)文法最速マスターシリーズのまとめ
4. 02/07 ネットサービス研究室 - プログラミング基礎文法最速マスターまとめ
5. 01/29 shortsleevedの日記 - 私も Schemeコードバトンを Squeak Smalltalk...

この日記のはてなブックマーク数
798034