プログラミング図形「12J」(ワンニャンジェー)開発ブログ

JAVAベースの図形でプログラミング出来る言語、「12J」を製作中です。

アンカ改良

アンカですが、既に置いた地点を再びマウスをドラックすることで、移動さたり何もないところを選択して切り離すことで外したり出来るようにしました。

あと、主従関係がおかしかったので修正。
C言語の関数的に考えて、同一子TBが複数置けないとおかしいですもんね。
f:id:programmingshape12:20121106230141j:image
なお上述の仕様変更により個別のアンカ消去はできるようになったので、右耳からの一覧には「アンカ一括切り離し」というのを追加予定。

さて前回までの仕様の話で、変数や関数はグローバル変数を想定してました。
すなはちプロトタイプ宣言とか冒頭の関数定義を不要とすることを意味しますが(TBを置いた時点で宣言したのと同じですからね)、では引数型やローカル変数はどういうふうに扱うかという話になります。


こちらも一応考えてて、まず引数に関しては前回命令文で使ったアレに似ています。
オレンジ枠に中味が白の四角がついていたのを覚えておいででしょうか?

あれを他の型のTBに入れます。図にすると、こう。
f:id:programmingshape12:20121106230204j:image

ローカル変数はちょっと悩んでて、定数やポインタみたく何か小さい記号をはりつけようかと。
いやそれ以前に、なまじ「1個のTBにはりつられる子TBは12個」なんて縛りを設定したがために普通に変数を張っていたらすぐ足りなくなる。
のでクラス・構造体枠を変数一覧に使いまわすか、強引に「変数はまるごと別ページにしてヘッダ化」なんてのも考えてます。
元々、一画面に収まらずに複数のファイルでの処理を考えてましたので。

ああ、ちなみに他の文字を使ったプログラミング言語では画面内で収まらない長いプログラムのために上下スクロールがついているわけですが
12にもスクロール機能つける予定です。

ただし、他の文字言語みたく上下なんてケチくさいこと言わず8方向スクロールぐらいで(笑)
そうなるとプログラムの全体像がわかりづらいので、ミニマップみたいなのを画面端に表示できるようにする予定です。
RPGではよく見かけますが、プログラム言語では前代未聞だろうなぁ。