ActiveBasic
出典: フリー百科事典『ウィキペディア(Wikipedia)』
パラダイム: | マルチパラダイム |
---|---|
登場時期: | 1999年代 |
設計者: | 山本大祐 |
型付け: | 弱い静的型付け |
影響を受けた言語: | N88BASIC、Visual Basic、C++、Java、D言語 |
プラットフォーム: | x86, x64 (Win32/64) |
ActiveBasic(アクティブ ベーシック、AB)は、1999年にN88-BASIC互換のインタプリタ言語として、山本大祐が個人で開発したBASIC言語である。近年のBASIC派生の言語であるVisual Basic等とは別に独自の進化を遂げてきた。
2002年に登場したバージョン2.5からは、RADツールを搭載。2003年のバージョン3.0からは、ネイティブコンパイラを搭載しインタプリタ方式からコンパイラ方式に変わるなど、年々より本格的な仕様になってきている。また、ActiveBasicはフリーウェアである。2005年、DirectXやオブジェクト指向に対応したバージョン4.0が公開された。
また山本氏は、バージョン5.0で64ビットコンパイラを搭載し、Microsoftの次期OSであるWindows Vistaへの完全対応をアナウンスしていたが、そのコンパイラの公開を前倒しし、バージョン4.20から64ビットコンパイラが搭載された。(32ビットコンパイラが無くなったわけではない)
目次 |
[編集] 特徴
[編集] 言語仕様
基本的にバージョン3以降はC言語や、バージョン4になってくるとC++そしてJavaなどの影響を強く受けている。具体的には、従来のBASICに見られない機能として次のようなものがある。
- ポインタ
- 特にポインタ演算や関数へのポインタの存在。malloc/free関数やNew/Delete演算子も存在する。
- クラス
- 特にバージョン5からは単一継承及びインターフェイスの多重継承というJavaに近い仕組みが搭載されるとアナウンスされている。
- /* ~ */によるブロックコメント
- ' (シングルクォーテーション)による1行コメントは無くなっていないが、バージョン3からREMは廃止された。
- プリプロセッサ
- ただし条件コンパイルなどが中心でマクロ置換はない。
- ガベージコレクション
- 評価版であるAB5 CP3より保守的GCが搭載された。
なお、現在、評価版としてActiveBasic 5.0 Customer Preview 3 (AB5 CP3)が公開されている。
[編集] Hello world
#prompt Print "Hello, world"
#promptはN88BASIC風の画面へのテキストの読み書きとグラフィックスを使用する指定である。(#N88BASICとしても同じである)なお、#consoleを指定するとWindowsコンソールアプリケーションを作成できる。その場合はグラフィックス機能は使えない。
MessageBox(0, "Hello, world", "Hello", MB_OK)
こちらはWindows APIを用いたものである。#promptなどを指定しなければWindowsアプリケーションとなり、特に指定すべきことはない。
[編集] 開発史
- 1999年 - バージョン1.0
- 前身VersatileBasicの後継
- N88-BASIC互換のインタプリタ言語として登場。
- 2000年 - バージョン1.5
- 中間言語コンパイラを搭載。
- 2001年 - バージョン2.0
- 構造化プログラミングに対応。
- 2002年 - バージョン2.5
- RADツールを搭載、Win32 APIに一部対応。
- 2003年 - バージョン3.0
- ネイティブコンパイラを搭載しコンパイラ言語となる。Win32 APIに完全対応。
- コード補完機能を搭載。
- 2006年 - バージョン4.2リリース。64ビットコンパイラの搭載。
- 2007年 - バージョン5.0リリース予定
なお、現在公開されている最新の版はバージョン4.24である。そして評価版としてActiveBasic 5.0 Customer Preview 3が公開されている。
[編集] 関連項目
[編集] 関連書籍
- 『ActiveBasicオフィシャルユーザーズガイド』 毎日コミュニケーションズ ISBN 4-8399-1456-7
[編集] 外部リンク
- activebasic.com (Activebasic公式Webサイト)
- ActiveBasic Wiki (非公式Wiki)
カテゴリ: BASIC | 統合開発環境 | コンパイラ | フリーウェア | オブジェクト指向言語 | コンピュータ関連のスタブ項目