Shiba
のバックアップの現在との差分(No.1)
ホーム
検索
最終更新
ヘルプ
リンク元
Wiki書式ヘルプ(整形ルール)
バックアップ一覧
差分
を表示
現在との差分
を表示
ソース
を表示
バックアップ
を表示
Shiba
へ行く。
Shiba - C++上で動くバーチャルマシン
妄想もここまでくればなかなかのもの。
Shibaとは
Shiba(シバ)はC++上で動くバーチャルマシンと,バーチャルマシンで動くコードを生成する仕組みのことです。
多人数ゲーム開発で使えるものを目指します。
まったり作成中。
構成
項目
説明
Shiba Language
Shibaの言語仕様。
Shiba Compiler
?
Shiba Languageで書かれたソースコードを中間データ「Shiba Byte Code」に変換するコンパイラ。C#で作成。
Shiba Engine
Shiba Compilerで生成されたByte Codeを実行するエンジン。C++で作成。
Shiba VM
Shiba Engineで動かすバーチャルマシンの仕様。
Shiba Byte Code
Shiba Compilerが出力するバイトコードの仕様。
経緯
最初はLuaやSquirrel,AngelScriptといったスクリプトエンジンを作るつもりだった。
しかしランタイムでコンパイルする仕様は自分の要求にどうしても合わなかった。
自分の要求とは次のようなもの。
できればさくっと作りたい。 -> C++でコンパイラ書くと考慮することが多くなり,さくっと作れない。
C++で書くコードを最低限にしたい。 -> C++は面倒くさいことが多い。
ソースコードを配布物に含めたくない。 -> 中間コードに変換したい。
解を求めていった結果,「C#でコンパイラを作り,PC上でソースコードを中間コードに変換し,ランタイムで中間コードを解釈し実行する」が理想ということになった。
その他
./メモ
Shibaの構成
Shiba Language : Shibaの言語仕様。ただの仕様。
Shiba Compiler : Shiba Languageで書かれたソースコードを中間コードに変換するコンパイラ。C#で作成。
Shiba Engine : Shiba Compilerで生成された中間コードを実行するエンジン。C++で作成。