| パラダイム | 連結型(スタックベース)、手続き型 |
|---|---|
| デザイン: | ハーバード-MIT |
| 開発者 | ジョナサン・サックス |
| 初登場 | 1975/1976 |
| OS | OpenVMS、CP/M、データジェネラルNova |
| 影響を受けた | |
| RPN、フォース | |
STOIC ( Stack - Oriented Interactive Compiler ) は、1970 年代のプログラミング言語であり、 Forthの派生です。
歴史
STOIC はボストンの MIT とハーバード大学の生物医学工学センター (健康科学技術部門の一部) で始まり、1970 年代半ばにJonathan Sachsによって書かれました。[1] Jonathan Sachs はその後Lotus Developmentの主任プログラマーとなり、 Lotus 1-2-3の最初のバージョンを作成しました。
STOIC のオリジナル版はData General Novaミニコンピュータで書かれ、8080 用にクロスアセンブルされた。STOIC には独自の原始的だが効果的なファイルシステムが付属しており、24K のメモリとテレタイプマシンを備えた8080ベースのマイクロプロセッサであれば、ほとんど事前の作業なしで起動できた。ソースがパブリックドメインにリリースされた後、システムはCP/Mで動作するように修正された。[要出典] [2]
STOIC は当時[3] 、拡張可能な「ワード」語彙の使用において FORTH と概念的に類似していると言われていました。[4] STOIC は実際には合理的で、より一貫性のある FORTH の方言です[要出典]。このシステムは、組み込みのアセンブラ、浮動小数点パッケージ、割り込みハンドラ、およびディスプレイエディタ (Nova ディスプレイエディタに類似) を備えていることで当時注目されていました。[5]ソースとドキュメントは、CP/M ユーザーグループによって長年にわたって配布されていました。[6]実用的な開発システムとして、当時の FORTH の実装と比較して優れており[7]、アプリケーションの開発に広く使用されるようになりました。 C で書かれた移植可能なバージョンはパブリックドメインに置かれ、CP/M ユーザーグループ (英国) によって配布されました。
その後、STOICはスミソニアン天体物理観測所(SAO) のロジャー・ハウク氏[8]によってVMS下のDEC VAXに移植され、DECUSによって配布された。[9] [10] 少なくとも1985年秋までは配布されていた。[11]
機能
STOIC は、他の FORTH バリアントとは異なり、 FORTH ディスク I/O を使用するのではなく、 VMS I/O およびシステム サービスと統合されました。また、マシン コード (インラインおよびサブルーチン呼び出しの両方) もサポートしました。STOIC は、スタックを使用して倍精度浮動小数点演算をサポートしました。
関連プログラム
いくつかのメーリングリストのコメントによると、[12] STOIC はもともと1975年にJonathan Sachsによって書かれました。LSEという別のプログラムはRobert Goekeによって書かれ、STOICのアイデアの一部を取り入れていました(初期のバージョンはSTOICと呼ばれていた可能性があります)。
LSE の 自動ツール化されたバリアントである LSE64 (Laboratory Software Environment) は、John Doty によって保守されています。
STOICの1つのバージョンは「スタック指向解釈コンパイラ」であると記載されていますが、どれがどれであるかは不明です。[13]
STOICAL (STack Oriented Interactive Compiler Adapted to Linux) は STOIC に触発されました。[14] 1980 年代初頭、アーネスト E. バーグマンが STOIC を PISTOL (Portably Implemented STack Oriented Language) と呼ばれる言語で復活させようとする試みがありました。同書。
参照
参考文献
- ^ チャールズ・バベッジ研究所に保管されているジョナサン・サックスの口述歴史インタビュー
- ^ リチャード・H・モシップ『ストア派の言語』マイクロシステムズ、1982年9-10月、90-95ページ
- ^ CP/M ユーザー グループ リリースからのメモ[引用が必要]
- ^ 1980年11月発行の英国CP/Mユーザーズグループ誌「CPMUGUK」より引用[引用が必要]
- ^ 1977年2月、Stoicの文書より[引用が必要]
- ^ Hirst.rx (1984年4月3日). 「Another File from England」。2008年12月1日時点のオリジナルよりアーカイブ。 2007年11月26日閲覧。
- ^ Go Forth, be STOIC、英国CP/Mユーザーグループジャーナル、1980年11月[引用が必要]
- ^ Andrea Levene (2004 年 5 月 7 日)。「Roger Hauck、65 歳、宇宙計画のソフトウェアを設計」。Boston Globe。
- ^ Michael Coughlin. 「Re: Forth ファミリー ツリー (以前の: Forth の将来)」. comp.lang.forth ニュースグループ。
- ^ 「UNTIL リファレンス ガイド」。1995 年 7 月 1 日。
- ^ 「VAX-SPLIB-1 – The Special VAX Library Collection 1」。1988–1989年。2007年9月27日時点のオリジナルよりアーカイブ。
- ^ John Doty、Michael Coughlin (2004 年 6 月 26 日)。「Forth の将来」。comp.lang.forth ニュースグループ。
- ^ 「爆発的トランジェントカメラ:天体光学閃光の広視野スカイモニター」(PDF)。NTRS NASA。MIT。1991年10月1日。 2016年6月20日閲覧。
- ^ 「Linux に適合した STack 指向のインタラクティブ コンパイラ」。Linuxに適合した STack 指向のインタラクティブ コンパイラ。2016年 6 月 20 日。2016年6 月 20 日閲覧。
外部リンク
- STOICカーネルソース
