ベーシック4GL

ベーシック4GL
パラダイム手続き型
開発者トム・マルグルー
初登場2002 (2002年
安定版リリース
v2.6.4 / 2017年7月30日 ( 2017-07-30 )
OSWindowsLinux
ライセンスGPLフリーソフトウェア
Webサイトbasic4 .sourceforge .net
影響を受けた
QuickBASICGW-BASIC

Basic4GLB4GLBasic for OpenGLに由来)は、BASICプログラミング言語インタープリタ型オープンソース版であり、 OpenGLを使用した3Dコンピュータグラフィックスをサポートしています。インタープリタ型でありながら、仮想マシン上でプログラムをコンパイルしてスタンドアロンの実行可能プログラムを生成することもできます。

これは、BASIC の従来の方言に似た構文を使用し、 IDEと非常に徹底的かつ包括的なデバッガーを備えています。

Basic4GL は、 C++などのプログラミング言語と競合するように設計されたものではなく、 QBasicGFA BASICなどの古い言語を置き換えることを目的としています。

Basic4GL には、次のような BASIC のバージョンに見られる通常のコマンドが備わっています...

また、ポインタ構造体、そして最も重要な OpenGL v1.1 API全体のサポートなど、Cプログラマーに馴染みのあるいくつかの機能も含まれています。

歴史

Tom Mulgrewは、 OpenGLの関数をC++などの言語で通常必要とされる設定を一切せずに、簡単かつ迅速に実行し、より安定させたいという思いから、Basic4GLを開発しました。彼は職場で使用していたものと似た仮想マシン構築しました。当初はOpenGLの関数がほとんどなく、その他の機能も最小限しか搭載されていないシンプルなものでした。最初のバージョンは比較的好評でした。[ 1 ]

最初のバージョンはGLBasic [ 1 ]と名付けられましたが、これは商用プログラミング言語でもあります。この問題は民事的に解決され、マルグルーのプロジェクトはBasic4GLと改名されました。

マルグルーはBasic4GLを拡張してMD2モデルを読み込んで表示できるようにすることを目標に設定した。[ 1 ]

バージョン

2.3.0 - ネットワーク機能の追加[ 2 ]

2.3.5 - 実行時のコードコンパイルのサポート[ 3 ]

2.4.2 - サウンドシステムをOpenALからAudiereに変更[ 4 ]

2.4.3 - プラグインDLLのサポートを追加[ 5 ]

2.5.0 - 追加された関数のサポート[ 6 ]

2.5.8 - 16進数のサポート[ 7 ]

バージョン

Basic4GLはWindowsオペレーティングシステム上で動作するように設計されていましたが、 LinuxおよびMac OS用のバージョンも開発されていました。一方、GambasはOpenGL 2.1コンポーネントも備えており、 FreeBASICおよびQB64用のGLバインディングも利用可能です。

Linux用Basic4GL

Basic4GLはLinuxへの移植作業が進められていました。Windows版Basic4GLとLinux版の大きな違いは、OpenGL対応ウィンドウの初期化にWindows固有のライブラリではなく SDLライブラリを使用している点です。

Mac用Basic4GL

Mac OS版も開発中でしたが、動作するバージョンはまだリリースされていません。

ベーシック4SDL

Linuxビルドをベースに、SDLライブラリ( SDLBasicと混同しないでください)にさらに近いBasic4GLの拡張バージョンを作成するプロジェクト。 [ 8 ]

ベーシック4ゲーム

Basic4GLの後継として「Basic4Games」という名称の開発も進められていましたが、プレビュー版が1つだけリリースされています。

ベーシック4GLj

Java仮想マシンへの言語の移植。[ 9 ]

サンプルコード

Dim A For A = 0 To 4 Printr "Hello " ; A Next

上記のコードをBasic4GLに入力して実行すると、モニター画面に以下が出力されます。

こんにちは0 こんにちは1 こんにちは2 こんにちは3 こんにちは4 

特徴

サウンドと音楽のサポート

Basic4GL が最初にリリースされたときは、サウンドの再生しかできませんでしたが、2006 年にOpen Alサウンド エンジンを使用して音楽のサポートが追加されましたが、後にAudiereに置き換えられました。

関数とサブルーチン

Basic4GLが最初にリリースされた当時は、関数をサポートしていませんでした。しかし、2008年1月にバージョン2.5.0がリリースされたことで状況は変わりました。現在、Basic4GLはローカル変数パラメータ前方宣言再帰を完全にサポートしています。

プラグイン

2006年8月、Basic4GLにプラグインDLLのサポートが追加されました。これにより、C++コンパイラさえあれば、独自のコマンドを記述してBasic4GLプログラミング言語に組み込むことができるようになりました。プラグインはBasic4GLの機能を拡張するもので、物理エンジン、 TrueTypeフォント、衝突検出など、 数多くのプラグインが存在します。

ソースフォージ

Windows 版の Basic4GL と新しい Linux バージョンは両方ともSourceForgeに配置されています。これは、人々が自由に言語を開発し、改良できることを意味します。

参照

参考文献

  1. ^ a b c dトム・マルグルー「Any Questions?」 ProBoards 2011年6月14日閲覧
  2. ^ Mulgrew, Tom. 「v2.3.0 リリース」 . ProBoards . 2011年6月14日閲覧
  3. ^ Mulgrew, Tom. 「バージョン2.3.5リリース」 ProBoards . 2011年6月14日閲覧
  4. ^ Mulgrew, Tom. 「Basic4GL v2.4.2がリリースされました」 . ProBoards . 2011年6月14日閲覧。
  5. ^ Mulgrew, Tom. 「Basic4GL v2.4.3がリリースされました」 . ProBoards . 2011年6月14日閲覧。
  6. ^ Mulgrew, Tom. 「Basic4GL v2.5.0」 . ProBoards . 2011年6月14日閲覧
  7. ^トム・マルグルー著「Home」2011年7月21日時点のオリジナルよりアーカイブ2011年7月18日閲覧。
  8. ^ Wybiral (2007-02-18). 「Basic」 . Ubuntu Forums .オリジナルから2023-09-27にアーカイブ。Basic4SDL : 主に3Dグラフィックなどを扱うためのOpenGL+SDLのプレイグラウンドですが、Linuxでも動作し、BASICの構文にかなり忠実です。
  9. ^ Proven, Liam (2023年3月28日). 「VBへの懐かしさ?BASICは死んだも同然」 . The Register . 2023年9月27日閲覧。Basic4GLの開発は休止状態ですが、JVMへの移植版であるBasic4GLjは現在も活発に開発が進められています。