その他のプログラム言語

最近ご無沙汰だけど、ほかに興味ある言語。

基本はやっぱり:C
 これまでのkunの母国語。
 あんまり大きくないプログラムは作ってもたのしい。
 パフォーマンスを要求されるものや、よりOSに近いプリミティブなものはいいね。
 なんでもかんでも小文字で書くのが変な感じがした(その前がModula-2だったから?)。
 パフォーマンスと消費メモリを天秤にかけながらするプログラムがマニアックな感じ。
 プロのプログラマとして一番たくさん使った。
 今となってはコンパイル→リンケージ→テストってのは煩雑に感じる。
 (メインフレームのFORTRANやったとき「先輩から机上でのコーディングをしっかりやって」とアドバイスされたのを今だに思い出す)

スタッキーな:FORTH
 すべてスタックでやり取りする単純さが素敵。
 (スタックには何でも入るというか、ポインタが入る)
 シンタックスが非常に簡単で、あとは自己増殖的にプログラミング。
 名前によってすべては参照され、名前空間などいう言葉も知った。
 定義と同時にコンパイル→内部バイナリ化。ソースは別に管理されている。
 でもあまりにスタック操作は煩雑。
 オブジェクト指向的なところを除けば、ちょっとSmalltalkと少々似てる気がする。
 FM-7用の「Tiny FORTH」がはじめての処理系。その後HITACHI MB-S1に個人的に移植。(たしか全体で10KByteなかったんでは?)
 Macintosh用「Mac Forth」も購入。少々遊んだ。
 そのうちSqueak上でうごくFORTHなんてのも作ってみたいもんだ。

強烈になつかしい:BASIC09
 OS-9/6809にバンドルされていたなんともナイスなBASIC。
 BASICとは言ってもどっちかというとPASCALっぽい。
 ソースエディタがついているのだがラインエディタ。
 中間言語コンパイラで、実行時はランタイムが必要。
 OS-9上でダイナミックリンクするのでリンケージは必要なかったのがよかった。
 (ポジション・インディペンデントだからね!)
 でもランタイム経由でパイプを渡すことができなかったので、パイプラインでつないで、複雑な処理や大きな仕組みをつくるのには向いていなかった。

堅実な:Modula-2
 初めて触れたコンパイラ。お値段も'87年頃だったのに1万円を切っていた!
 インターラクティブに1パスでコンパイルされていた。パイプラインでコンパイラに渡してあげることができた。
(後に行列計算手続き生成プログラムに応用した)
 隠蔽化、スコープルール、モジュール独立性などを学んだ。
 ポインタを含む、たくさんの「データ型」とプロトタイピングを支援する仕組みに感激。
 遅延評価(と後で知る)も体験。
 〜当時「最近話題のオブジェクト指向の考えを取り入れた」とされていた。
 OS-9との組み合わせで、ポインタで別プロセスのメモリを壊したりすることがなく、安心して使ってた。
 大学の卒業研究で「行列計算手続き生成プログラム」を企画して作った。処理系はこれを使うことが前提だった。吐き出されるプログラムもModula-2だったから。
 このころはCをやりたくなかった。プロになってCじゃないとだめだったので、しょうがなくやるようになるまでModula-2が一番好きだった。

すてきな目覚まし環境:HyperCard(HyperTalk)
 初めてイベントドリブンに触れた。
 スクリプトのメッセージの上位オブジェクトに向けてのサーチ(メソッドサーチ)とか。
 オーサリングツールというよりも、Macintosh上の手軽なアプリ作成ツールとして使っていた。
 それぞれのオブジェクトにメッセージを送ると、それぞれのオブジェクトのコンテナとスクリプトでいろいろ動く、というのがものすごく新鮮だった。
 OnMouseUpで起動される手続きが新鮮だった。
 イベントドリブンに初めて触れた。でマウスボタンがクリック後に離された時というのも新鮮だった(このころのマウスを使ったソフトは、ボタンを押したときに動作が起こるものが多かった気がする)。
 そういえば、いまでは当たり前のHTMLは、このHyperCardの影響も受けてるそうな。でもなんかHTMLってHyperCardほどわくわくしたりしない。ぜんぜんしない。目的がちがうのか。
 一時はハイパー○○ってのが流行ったのを覚えてる。関係あるのかないのか知らないが。今でもハイパーマートはあるな。

初めてのプログラミング:BASIC
 初めてコンピュータに触れ、初めて言語に触れた時のシャープのポケコンのBASIC。
 雑誌のリストを徹夜で打ち込んだものでした。まずはアウトプットを自分の気に入る形に変更するところから始まって、だんだん処理の中身まで手を出すように。
 そのうち、弟がMZ-2000を買ったもんで、弟を押しのけて没頭。
 学生時代、研究室にあったFM-16βで動いてたF-BASIC(86)コンパイラはまたよく遊んだ。
 そのころちょうどテトリスがゲーセンではやってて、みんなやりたいんだけどお金がもったいなかったので、F-BASICで作って遊んだ。
 キーボードのタイピングの正確さと速さを競うプログラムは、ランキング付きにしたら研究室の中でシノギを削る壮絶なバトルが展開された。
夕方帰る前にハイスコアを出しておいたのに、次の日の朝には既に5位入賞もしていない、、などということも連日のようにあった。

仕事じゃおなじみ:MS-Access
 8年くらい前かな、4GLと言われて使われてた。
 かなり複雑なSQLも、ビジュアルに設計できてらくちん。ちょっとした身近な事務処理がさくっと作れるので重宝している。
 今使っているOffice2000の中のものより、少し前のころのほうが使いやすかった。今のVBAの環境がジャマくさい。
 ウィンドウや帳票はどうやってもWindowsソフトそのものになってしまうのが、しょうがないけどイヤラシイ。仕事でなければ使いません。

んー:COBOL(会社の新人教育で2週間ばかしやっただけ)
ちょっと。。:FORTRAN(配属されたばっかにちょっとやった)
もう機会はない:6809アセンブラ