ズッキーニの味噌煮込みBlog版

コンピュータのこと、食べ物のこと、なんでもないこと、とんでもないこと。

FORTHを作ってみた

2012年05月27日 09時41分47秒 | Weblog
ちょっと仕事の手が空くと、iPhoneで動くアプリを「なにか作ってみよう」とソワソワする。

前回はZ80のアセンブラ/逆アセンブラ/シミュレータだった。DAA(十進演算補正)命令の細かな仕様がよくわからなくて苦労したが、なんとかつぎの仕事が入る前に片付けた。面白かったので今回もなにかということで思いついたのがFORTHコンパイラだった。

アタシとFORTHコンパイラとの出会いは、電力会社の通信部門からマイコン業界に飛び込むきっかけでもあった。

当時マイコンショップの店長だったMさんがI/O誌に載っていたZ80版FORTHコンパイラのソースリストをフローチャートに起こし、アセンブラの勉強の教材にしてくれたものだ。だからアタシはZ80のアセンブラと同時にFORTHコンパイラの作り方も覚えていったわけで、いまにして思えばプログラマとして贅沢すぎるスタートを切っていた。後にそのMさんから「おいでおいで」をされて転職したデービーソフト(当時はまだ「コンピュータランド北海道」という社名だった)がプロのソフト屋としてのスタートだ。

FORTHといえばリギーコーボレーション(現スクリプツラボ)の片桐明氏(アタシのソフト屋としての師匠でもある)によるFIFTHが有名でだが、FIFTHは後に本格的な日本語プログラミング言語「Mind」に発展し、アタシはそのMindのOS/2版の開発のために片桐氏から「おいでおいで」をされて(笑)、PC-286(PC-9801互換機)のBIOS開発が一段落したEPSONからリギーに転職したのだった。

それくらいご縁の深いFORTHコンパイラなので、実はもう3度ほどそれぞれ特徴的な機能を持つものを作っている。残念ながらどれも仕事ではなく完全に自分自身の趣味としてだが。今回もまた、自分自身の趣味としてFORTHコンパイラを書いてみることにした。iPhoneに乗せるのでObjective-Cで書くから、ディクショナリの構造やThreadedCodeの実装方法など、かなり斬新な(「偏った」とも言うか)アイデアを盛り込んだ。基本部分が動き出すまで3日程度だったので、わりと早いほう。楽しかった。

写真はそのFORTHコンパイラ「iFORTH」で書いた「1から10までの数字を足す」プログラム。ちゃんと動いているよ。(^^)

------- *

今月の27日の花はこれ

最新の画像もっと見る

コメントを投稿