








Subtext
ビジュアルプログラミング言語/環境。
2010年2月の時点では言語としてはまだ実験段階のようだが、環境としては極めて美しく整っている。
プログラムは2次元のテーブルで表現され、横軸はロジック (decision)、縦軸は演算 (doing)を表わす。
スプレッドシートにも似ているが、スプレッドシート自体には関数抽象やデータ抽象化・ループや再帰などはなく、結局は非ビジュアルなスクリプトに頼るしかなかった。Subtextはその問題に真正面から取り組んでいる。
複雑なロジックをif-then-elseやswitch-caseで書くとプログラマ自身が全体を把握しきれずミスが生じやすいが、Subtextではシステムがロジックの場合分けを把握して表を自動的に整えるので、見やすく・編集もしやすく・カバーし忘れもない。
オブジェクト指向言語であり、多態もそのままロジックとして活用できる。
(多態を使えばifを減らせるというのは、オブジェクト指向の元々の効用であるから、統一は自然なことだろう。もっとも、プログラムがテキストという静的な形をとらないのならSubtextでなくてもツールが強引に多態もifも統一的に扱ってしまえたかもしれない。多態ということで言うなら呼び出し側のプログラムにはメッセージだけがあって、その向うにある呼び出される側が抽象化されているべきなのだが、Subtextのツール上では具体的なクラス名が並べられている? これはツールだから構わない?)
実行のトレースやアサーションのようなこともテーブルのGUIですんなりとサポートされる。
プログラムを書くことと実行することが完全に統一されていてWYSIWYGになっているようだ。
UIがよく出来ているようで、公式サイトにあるプレゼン動画の英語が全部聞きとれなくても見ればわかる。何はともあれ動画を見ることをオススメする。(公式サイトの"What is Subtext?"の"see for yourself"がプレゼン動画)
残念ながら私の環境では処理系をダウンロードしても実行できなかった。↑ここまではとりあえずプレゼン動画とFAQを見て書いた。
まだあまり知られていないようだが、注目すべき言語ではないかと思われるので、簡単な紹介をここに書いておいた。
--やまねこ
公式サイト
Subtext Home[英語]
このページを編集 (1846 bytes)
 |
以下の 1 ページから参照されています。 |
This page has been visited 3105 times.