ActiveBasic

ActiveBasic（アクティブ ベーシック、AB）は、1999年にN88-BASIC互換のインタプリタ言語として、山本大祐が個人で開発したBASIC言語である。近年のBASIC派生の言語であるVisual Basic等とは別に独自の進化を遂げてきた。

2002年に登場したバージョン2.5からは、RADツールを搭載。2003年のバージョン3.0からは、ネイティブコンパイラを搭載しインタプリタ方式からコンパイラ方式に変わるなど、年々より本格的な仕様になってきている。また、ActiveBasicはフリーウェアである。2005年、DirectXやオブジェクト指向に対応したバージョン4.0が公開された。

また作者は、バージョン5.0で64ビットコンパイラを搭載し、Windows Vistaへの完全対応をアナウンスしていたが、そのコンパイラの公開を前倒しし、バージョン4.20から64ビットコンパイラが搭載された。（32ビットコンパイラが無くなったわけではない）

2008年7月5日以降、バージョンアップは行われていない。

 特徴 
 言語仕様 
基本的にバージョン3以降はC言語や、バージョン4になってくるとC++そしてJavaなどの影響を強く受けている。具体的には、従来のBASICに見られない機能として次のようなものがある。
 ポインタ  特にポインタ演算や関数へのポインタの存在。malloc/free関数やNew/Delete演算子も存在する。
 クラス  特にバージョン5からは単一継承及びインタフェースの多重継承というJavaに近い仕組みが搭載されるとアナウンスされている。
 /* 〜 */によるブロックコメント  ' （シングルクォーテーション）による1行コメントは無くなっていないが、バージョン3からREMは廃止された。
 プリプロセッサ  ただし条件コンパイルなどが中心でマクロ置換はない。
 ガベージコレクション  評価版であるAB5 CP3より保守的GCが搭載された。
なお、現在、評価版としてActiveBasic 5.0 Customer Preview 5 (AB5 CP5)が公開されている。

 Hello world 
 #prompt
 Print "Hello, world"
#promptはN88BASIC風の画面へのテキストの読み書きとグラフィックスを使用する指定である。（#N88BASICとしても同じである）なお、#consoleを指定するとWindowsコンソールアプリケーションを作成できる。その場合はグラフィックス機能は使えない。

 MessageBox(0, "Hello, world", "Hello", MB_OK)
こちらはWindows APIを用いたものである。#promptなどを指定しなければWindowsアプリケーションとなり、特に指定すべきことはない。

 開発史 
+バージョンリリース1.01999年前身VersatileBasicの後継。N88-BASIC互換のインタプリタ言語として登場。1.52000年中間言語コンパイラを搭載。2.02001年構造化プログラミングに対応。2.52002年RADツールを搭載、Win32 APIに一部対応。3.02003年ネイティブコンパイラを搭載しコンパイラ言語となる。Win32 APIに完全対応。4.02005年オブジェクト指向・DirectX・COM・64ビット整数型に対応。コード補完機能を搭載。4.22006年64ビットコンパイラの搭載。5.02008年

 なお、現在公開されている最新の版はバージョン5.0.0.5である。

 関連項目 
 BASIC

 関連書籍 
 『ActiveBasicオフィシャルユーザーズガイド』 毎日コミュニケーションズ 

 外部リンク 
 activebasic.com （Activebasic公式Webサイト）
  （完全定義ファイルの配布）

ACTIVEBASIC
ACTIVEBASIC
ACTIVEBASIC
ACTIVEBASIC
ACTIVEBASIC