| CBASIC | |
|---|---|
コンパイラとインタプリタのワークフロー | |
| 開発者 | ゴードン・ユーバンクス |
| 初 登場 | 1976年 (1976年) |
| 実装言語 | PL/M |
| OS | CP/M |
CBASICは、1976年から1977年にかけてゴードン・ユーバンクスによってCP/Mオペレーティングシステム用に書かれたBASICプログラミング言語のコンパイル版です。BASIC -Eの拡張版です。[ 1 ] [ 2 ]
BASIC-E は、ユーバンクの修士論文プロジェクトでした。[ 1 ] [ 2 ] これは、ユーバンクがカリフォルニア州モントレーの海軍大学院に在籍していた際に、ゲイリー・キルダルの新しい CP/M オペレーティングシステム用にPL/Mで開発されました。[ 1 ] [ 2 ] BASIC-E は、ゲイリー・キルダルが 1974 年に最初に書いた BASIC コンパイラに基づいています。 [ 1 ] [ 2 ]
BASIC-Eは公費で開発されたため、パブリックドメインであり、独占的に販売することはできません。[ 1 ] [ 2 ] [ 3 ] IMSAIのマーケティングディレクターであるシーモア・ルービンスタインは、ユーバンクスに連絡を取り、契約に基づいてIMSAI 8080マイクロコンピュータ用の販売可能なバージョンを作成するよう依頼しました。[ 4 ]ユーバンクスは、カリフォルニア州バレーホの潜水艦USSジョージ・ワシントンに駐留していた海軍士官の余暇にCBASICを開発しました。彼はIMSAIとプログラムの共同所有権を保持し、 1981年にDigital Researchに買収されるまで、自身の会社Compiler Systemsを通じてCB80を販売しました。[ 5 ] [ 1 ] [ 2 ]
BASIC-Eと初期のCBASICは、ソースコードを中間pコードファイルにコンパイルし、それを別の実行時インタープリタプログラムで実行しました。CBASICは最小24KBのメモリで実行できました。プログラムソースの行番号は、プログラムジャンプのラベルとして必要な場合を除き、省略可能でした。CBASICは、会計処理で問題となることがあったMBASICの丸め誤差を解消する 14桁の二進化十進数(BCD)演算を組み込んでいたため、非常に人気がありました。
CBASIC2には以下の機能が追加されています。
InfoWorld は1980 年に CBASIC を「商用 CP/M アプリケーション開発の主要言語」と評した。これは、開発者が BASIC に広く精通していることと、ソース コードなしでロイヤリティフリーのバイナリを CBASIC 所有者に配布できることが理由である。同誌は、この言語が「深刻な欠点にもかかわらず」人気になったと述べ、その欠点には、解釈型ソース コードに必要なプリプロセッサによるデバッグの困難さ、処理速度の遅さ、互換性のない変更などが含まれる。 [ 6 ] 1980 年 12 月、ジェリー・パーネルは「煩わしい点」を指摘しながらも、 CBASIC の設計とドキュメントを称賛した。しかし、彼は、 BASCOM はCBASIC の扱いにくい編集-コンパイル-実行-デバッグ ループなしで、はるかに高速なバイナリを生成すると述べた。 [ 7 ] 1982 年 5 月、彼は、配列の再次元化機能や優れたガベージ コレクションなど、BASCOM と比較して CB80 には「多くの利点がある」と述べた。プルネルは、このドキュメントが通常のデジタルリサーチのマニュアルよりもはるかに優れていると読者に保証した。しかし、CB80 を使用したソフトウェアを販売するための年間 2000 ドルの料金を「まったくの狂気」と非難した。 [ 5 ] 1982 年 9 月、プルネルは、ローカル変数と Pascal に似た関数を挙げ、CB80 は「BASIC の固有の欠陥がほとんどなく、 PascalとPL/Iの真の競合相手であり続けている」と述べ、新しい、より自由なライセンスを承認した。 [ 8 ] 1983 年 5 月、彼は、デジタルリサーチが彼の会社を買収した後、ユーバンクスの CBASIC マニュアルを「事実上台無しにした」が、新しい版ははるかに優れていると述べた。 [ 9 ]