仕事柄、というか講義そのものでもよく使っている
非常にとっつきやすいプログラム開発環境。
講義、ゼミ、研究の為の簡単な数値実験などなど
普段から大いに活躍している。
その昔はインタプリタなんて遅いから
大規模な計算のいる作業はやっぱり他の言語で、
と敬遠したものだが、
8bitパソコン(マイコン!)時代からすれば
本当に夢のようなマシンパワーが得られる現在、
かなりなことがインタプリタであるこの十進BASICでさせられる。
いい時代になったものだ。
(仮称)十進BASIC
フリーソフト十進BASICのホームページ
Microsoft系BASICではなく、FullBasicの開発環境。
特に気に入っている点を列挙。
- とにかくとっつきやすい
もちろん、その昔PC-8001の時代からBASICに
お世話になっていたせいもあるけど、
Cなどの他言語に比べ、変数宣言や型に神経を使わずに
何となくプログラムできてしまうのが何よりいい。
(プログラマーは全く逆のことを言うでしょうけど。)
コンピュータアレルギーの数学の学生に、
プログラムの仕組み、アルゴリズム的な考え方、
問題の分割の仕方などを教えるのに、
変数宣言や型変換などの技術的な問題を脇に置けるので、
本当に最短で本質だけを教えられる言語ではないかと思う。
- 計算が正確である
コンピュータだから当たり前だろう、という人もいるかもしれないが、
計算誤差が本当に少ない。
いざとなれば1000桁計算モードもあり、フリーソフトでありながら
計算結果を信頼できるのはありがたい。
- 数学実験に非常によくマッチするグラフィックス表示環境
普通他の言語でプログラムする時、簡単な画像表示をするだけでも
あれこれお膳立てがいったりする。C++もJavaもVisual Basicも...
また、MathematicaやMaple、Gnuplotといった数式処理ソフトでも、
その表示方法に慣れるまではいらいらするものだ。
が、この十進BASIC、初めから数学実験を念頭において書かれたのだろうか、
扱いが非常にシンプルで直感的。
絵を描くためのお膳立てがほとんどいらず、
数式処理ソフト系のような妙な記述方法もない、
両者の良いところ取りした
(プログラムすることの柔軟性と規格化された表示方法)
丁度中間的な位置にあって自分にはとても使いやすい。
何よりデフォルトで数学座標系をとっているところがうれしい。
その上、プログラマーが数学座標系を定義して
内部処理でピクセル座標に変換するので、
「ピクセル単位」を全く意識せずに自由にプログラムを書いていける。
- 再帰呼び出しができる
Microsoft系のBASICしか知らなかった自分には、
この機能はかなり衝撃的。
おかげでこの機能をフルに使った講義「計算機利用数学A」を
数年やってしまった。
- 一次変換と複素平面が扱える
描いた画像を回転・スケール変換・平行移動できる命令群が用意されている。
これは特にゆとり教育のあおりを受け、とても脆弱になってしまった
「変換」の考え方を教えるのに十進BASICは格好の道具になると思っている。
実際、「計算機利用数学A」では、この機能をフルに使って学生たちに考えてもらった。
また複素数モードも用意されており、変数に複素数を代入し、
そのまま複素数計算をさせられるようになっている。
これも嬉しい機能だ。
- 構造化プログラミングができる
これもMicrosoft系BASICにはできなかったこと。
これはまた、学生たちに「問題を小さく分割して解決すること」
を教えるのにちょうどいい教材になると考えている。
とはいえ、なかなか伝わらないのが悩みだが...