[戻る]

FGES言語の概要

●特性

FGES(Fuku Game Event Script)は
ゲーム開発用ツールであるFGS(Fuku Game Studio)で使用するスクリプト言語として設計されました。

言語ベースとしてC++を採用、Ruby/Java/C#などの機能を一部取り込み、
ゲーム実行用スクリプトとして調整を施しています。
それに加えC++の扱いづらい部分や複雑にすぎる部分については
一部機能を削除、調整を行い、言語の複雑性を下げています。

これにより、ゲームシステム記述用として十分な記述能力を持ち、
クラスベースの主要なプログラミング言語を使用できる人には
比較的馴染みやすい言語に仕上がっていると思います。

また、デバッグのしやすさを重視した設計になっており、
新規に習得する人には主要言語習得の前段階として利用できることを目指しました。

●パラダイム

FGESはベースとなる言語の影響もありマルチパラダイム言語です。
FGESのメインとなるパラダイムはオブジェクト指向をベースとした
独自のものになっていますが、
構造化、手続き、オブジェクト指向、リフレクションをサポートします。

ただしC++が持っていたジェネリックは退化しています。
なお、この点について将来的に拡張を行う可能性はあります。

●設計方針

FGESは本質的には動的解決で動作していますが、
コンパイル時に多くのミスを検出するために明示的な宣言を要求します。
これは多くのスクリプト言語にみられる、
記述字数を少なくすることを目指す方針とは反対ですが、
ゲームシステムの記述を想定するFGESにとってコンパイル時点でのエラー検出や
整合性の検証は重要であると考えていることによります。

一方で動的解決による動作にもメリットがあることから、
動的解決を行うことを明示した部分に限り、動的解決ができるようになっています。

また、スクリプトが暴走した場合でも本体プログラムが動作できるよう、
スクリプトエンジンは本体プログラムの下で動作するようになっています。
(ただしコンソール版のFGES Coreではこの機能は動作しません)


[戻る]

最終更新 2015/11/24