BASIC/98は、有限会社電脳組が手掛ける、プログラミング言語
BASICの処理系です。主にパーソナルコンピューター上で
BASICプログラムを作成し実行するために用いられます。当時の主要な機種に対応したバージョンが開発され、N88-
BASICとの
互換性と、現代的なプログラミング手法への対応を特徴としています。
その歴史は古く、
1987年に神津システム設計事務所(KSP)から「
BASIC/98 Fast」という名称で登場しました。当初は構造化
BASICをサポートする
インタプリタ兼
コンパイラとしてリリースされ、その権利は複数の企業を経由した後、現在のように電脳組が引き継いでいます。
[MS-DOS]]版の大きな特徴は、当時の代表的なBASIC処理系であったNECのN88-
BASIC]と高いレベルでの[[互換性を持っていたことです。これにより、N88-
BASICで書かれた既存のプログラム資産を比較的容易に活用することが可能でした。さらに、基本的な文法に加えて独自の拡張が加えられており、特に
構造化プログラミングやモジュラープログラミングを支援するための機能強化が図られています。
構造化プログラミングのサポートとして、「行分けIF文」や、複数の条件分岐を簡潔に扱える「SELECT文」(
C言語のswitch文に類似)などが導入されました。モジュラープログラミングに関しては、独自の
ローカル変数や
引数を持つ
サブルーチンや関数の定義が可能となり、より規模の大きなプログラム開発にも対応できるようになっています。対応機種はNEC
PC-9800シリーズ向けのものがよく知られていますが、東芝J-3100シリーズなどに対応したバージョンも存在しました。
Windows版の現状と特徴
Windows上で動作するバージョンも開発されています。Windows版では、
MS-DOS版の機能の多くが引き継がれていますが、機械語
ルーチンの直接呼び出しなど、OSに密接に関連する一部の機能は除外されています。
2015年時点での最新版はバージョン5.1で、こちらは
インタプリタ機能のみを提供しています。
コンパイラ機能は含まれません。Windows版もN88-
BASICとの
互換性を重視しているため、画面の表示サイズは640×400または640×480ドットの固定サイズに限られており、任意の解像度での利用はできません。
BASIC/98はN88-
BASICとの高い
互換性を持ちますが、完全に一致するわけではありません。細かな文法の違いや、
BASIC/98独自の拡張機能に伴う
予約語の増加などにより、N88-
BASICで作成されたプログラムを移植する際には、ある程度の修正作業が必要となるケースが多く見られます。
しかし、プログラム入力時に各行の文法をその場でチェックしてくれる機能が備わっているため、エラー箇所の特定や修正作業は比較的容易に行えます。
パフォーマンスと実用性
全体的に動作は安定しており、実用レベルとしては十分な性能を持っています。ただし、実行速度に関しては、プログラムの性質にも依存しますが、必ずしも最速とは言えません。現在では、
フリーウェアとして提供されている他の
BASICインタプリタの中には、
BASIC/98よりも高速に動作し、画面サイズも自由に設定できるなど、より高い実用性を備えた処理系も存在することも事実です。
それでも、
BASIC/98はN88-
BASIC資産を活用したいユーザーや、シンプルながらも構造化・モジュラープログラミングの概念を取り入れたいユーザーにとって、安定した選択肢の一つと言えるでしょう。