BMX2WAV では機能の一部をスクリプト(Squirrel言語)で定義・実行したりしています。 これにより、実行ファイルを再度コンパイル等すること無く機能を変更・拡張・追加することができるようになっています。
BMX2WAV で使用している Squirrel のバージョンは 3.1.0 になります。
BMX2WAV で採用しているスクリプト言語は Squirrel 言語になります。
似たような用途でよりメジャーな言語には lua がありますが、 lua はプログラム言語的に少し癖があり Squirrel はそれに比べ素直な言語なので こちらを採用しました。
if や for 等の制御構造、関数、クラス、例外等の通常のプログラム言語に良くある機能を有しており、 整数、文字列、配列、テーブル(連想配列やハッシュと同機能)等のデータを扱えます。まあ普通の言語ですね。
Squirrel 言語について勉強したいのなら、以下のサイトが参考になるかと思います。
BMX2WAV と BMX2WAV Searcher ではスクリプトファイルを読み込むそれぞれタイミングがあり、 各タイミングで複数のスクリプトを読み込みその後の動作が決定されます。
どのような時にどのスクリプトファイルが読み込まれるのかは以下の図に示した通りになります。 (初期化等はこのファイルだけではなく実行ファイル内でも色々と行われています。)