連載Macの開発環境(月刊ASCII 1987年1月号6) [月刊アスキー廃棄(スクラップ)]
「Macintoshの開発環境はどうなっている?」という連載記事。一応スクラップしておく。
34年前のアマチュアプログラマの私はCP/Mをメインに使っていてPC-9801シリーズ等でBasciでプログラミングしている人たちを下に見ていた。口には絶対出さなかったがOSを知らない狭い知識でプログラミングしていてもいいプログラムは作れないと思っていた。まあ、実はそんなことはなくBasicでBasciコンパイラを作るような知人もいたのだが。
さて、Macでのプログラミングの話。これはもう別次元のものだった。知人が「Macは使って天国、作って地獄だ」と言っていたが、具体的には良く分かっていなかった。でもこの連載をスクラップしてみると34年前Z80のアセンブラとかPC-9801のBasci + 機械語でのプログラミングから見るとMacの統合環境(IDE)はなんのことか分からなかった。
この連載は全く記憶に残っていなかったが、34年後の今はやっと理解できるようになっていた。Macは本当に先進的な機械だったんだなとつくづく思う。
以下図をスクラップする。
当たり前の良く見る画面だが、34年前PC-9801とかにはこんな環境はなかった。
出たー!32Kbytesのセグメントの壁。Mac使いの知人がこのセグメントの壁のことを言っていたが、8086でもあるまいし、なぜ68000にセグメントの壁が?と不思議だった。昔はセグメントを決めてプログラミングすることに何かメリットがあると思っていたのだろうか?面倒この上ないことだった。
とまあ、ここまで今では当たり前の画面をスクラップした。まとめの部分をスクラップする。
Macintoshというと,日本ではとかくプログラマから敬遠される代表機種のようで,いまだに開発用言語やプログラミングツールが存在しないかのように思われている。
確かに発売から1年ほどの間は,開発言語も開発環境もなかった.Apple社でもLisaの「WorkshopPascal」(図1)を使用していたほどである.同社は,AppleIIが主力機種であった頃から,開発環境の整備が遅いという非常に悪い伝統?を持っており,それは新製品「IIGS」にも受け継がれている(IIGSの開発ツールはすべてサードパーティ製である).
ところが,昨年の前半あたりから,MacにもC,Pascal,Fortran,Modula-2,Lisp,Logo,68000アセンブリ言語など多種多彩なプログラミング言語が登場してきた.しかし,開発環境が整ってきたにもかかわらず,いまだにMacでプログラムを組むユーザーはごく少数である.ユーザーがプログラムを組まない理.由は,多分,市販のパッケージの完成度の高さが原因としてあげられる.それらが良くできているために,開発をしようという気にもならない.
これが他機種のようにマウスもいらない,マルチウィンドウもプルダウンメニューもいらない,というのであれば,市販のMac用言語を1本買ってくれば,すぐにでもプログラミングは始められる.もろちん,Macでプログラムを組もうと思うくらいのユーザーは,それでは満足しないから苦労するわけだ.
マウスやオーバーラップ・マルチウィンドウ,プルダウンメニューなどのオブジェクト指向のオペレーションをパーソナルな領域に持ち込んだMacであるが,ユーザーが扱いやすく,ありがたがるこうした機能を実現しようとすると,すべての責任が開発者に重くのしかかってくる。
34年前のアマチュアプログラマの私はCP/Mをメインに使っていてPC-9801シリーズ等でBasciでプログラミングしている人たちを下に見ていた。口には絶対出さなかったがOSを知らない狭い知識でプログラミングしていてもいいプログラムは作れないと思っていた。まあ、実はそんなことはなくBasicでBasciコンパイラを作るような知人もいたのだが。
さて、Macでのプログラミングの話。これはもう別次元のものだった。知人が「Macは使って天国、作って地獄だ」と言っていたが、具体的には良く分かっていなかった。でもこの連載をスクラップしてみると34年前Z80のアセンブラとかPC-9801のBasci + 機械語でのプログラミングから見るとMacの統合環境(IDE)はなんのことか分からなかった。
この連載は全く記憶に残っていなかったが、34年後の今はやっと理解できるようになっていた。Macは本当に先進的な機械だったんだなとつくづく思う。
以下図をスクラップする。
当たり前の良く見る画面だが、34年前PC-9801とかにはこんな環境はなかった。
出たー!32Kbytesのセグメントの壁。Mac使いの知人がこのセグメントの壁のことを言っていたが、8086でもあるまいし、なぜ68000にセグメントの壁が?と不思議だった。昔はセグメントを決めてプログラミングすることに何かメリットがあると思っていたのだろうか?面倒この上ないことだった。
とまあ、ここまで今では当たり前の画面をスクラップした。まとめの部分をスクラップする。