M と OSLO を聞いてきた。

codeseek 勉強会に参加して、M 言語と OSLO の話を聞いてきました。
もともと、M Grammar の話から長沢さんに聞きたいっていう話になっていたんですが、要するにデータ定義の言語なんだと理解しました。
データ定義というか、スキーマ定義には M Schema がありますが、これも M Grammar で作成されているみたいです。M Grammar は、柔軟性が高いため、自然言語に近いものもパースできてしまいますが、それはただの一例に過ぎません。たとえば、以下のような定義も M Grammar で行うことができます。

                              • -

id:char,6
Name:varchar,20
Age:int

                              • -

当然、データが定義できたらそれを処理するための Runtime が必要になるので、Runtime も作れます。たとえば、以下のようなデータを用意して、ランタイムで音を鳴らすこともできます。

                              • -

ド、ミ、ファ、ファ、レ、ミ、レ

                              • -

そんな感じで、M 言語は非常に柔軟性の高い言語になります。


QUADRANT は、ものすごく柔軟性の高い可視化ツールに見えました。
あらゆるデータを可視化できる(ように見えました)ドリルダウンもできて様々な情報を一元管理できるようです。
うまくやれば簡単なアプリが作れる気がしました。バリデーションは、M Schema で定義できるし。


M と OSLO は、仕様を公開して、業界全体でモデリングを盛り上げていこうというコンセプトのようです。
UMLオブジェクト指向の例を見ると普及するまで 10 年ぐらいかかるかもしれません。マイクロソフトがそれまでの間、押し続けて行けるかどうかにかかっている気がしました。



そして、最後に大西さんが Silverlight 3 と Expression Blend 3 のデモを見せてくれました。
デモだからというのもあると思いますが、すごく簡単に Silverlight アプリが作れるという印象を受けました。
そして、おもしろかったのが、画面遷移図の定義をしつつプログラムが作られていくというものです。
このボタンが押されたら、この画面に遷移するという処理がモデルで定義できます。これから楽しくなって行く気がしました。