共通プラグイン構想

先日のワークショップの時に、いろいろなプログラミング言語の文法定義だけ作っておけば、どこからの言語から、どこかの言語へ相互変換できるシステムがあったらどうかという議論がありました。

それで、私も以前から考えていたことで、せっかく「なでしこ」で1000以上の命令が用意されているのだから、新しい言語を作っても、この1000個の命令をそのまま使えるようにならないかなぁというものです。「.net」の発想がまさに、これで、「.net」対応言語なら、相互にライブラリを呼び出すことができるようになっています。

せめて、「葵」のWindows版では、なでしこの各関数を使えるようにしたいと思っています。
そのために、なでしこの各プラグインの仕様にちょっと手を加えて、葵から利用できるようにしようと思っています。

なでしこの現在のDLLでは、「ImportNakoFunction()」を呼ぶと関数がシステムに登録される仕組みになっており、この関数の中で、なでしこのエンジンに関数を登録されます。

そのため、外部の言語からなでしこのライブラリにある命令を呼ぶには、なでしこの命令文字列を作って呼び出すという面倒なことをしなくてはなりません。

これを葵風に改良すれば、番号で命令を呼び出すことができるようにすれば、他の言語からもライブラリが使えるようになります。現在のままだとちょっと難しいので、ゆっくり、仕様をちょっと考えてみようと思います。

Done

  • 半角でなく全角の文字列展開記号、例えば「{S}」でも展開するように
  • 未定義の単語が出たときのエラーが不親切
  • 「反復」構文が未実装