先日のVSMM2010でMobilizingのワークショップを行なってきました。MobilizingはパリのFdMで開発が始まり、最近はIAMASも協力しているiOS用の新しいプログラミング言語です。僅か2時間半ほどのワークショップだったので、Mobilizingの紹介と体験くらいしかできなかったものの、それでもプログラミングが苦手と言う学生さんも変なアプリを作っていました。
Mobilizingの特徴は、ずばり、ビギナー&アーティスト向けの超簡単言語ってことですね。どれくらい簡単かと言うとこんな感じ。
// IDの宣言
int ship = 0;// 初期設定
void setup()
{
// 船を作る
ship = triangle(0,0, 30, 100, -30, 100);
}// 処理更新
void update()
{
// 船を動かす
float x = AccX * 10.0 + getPositionX(ship);
float y = -AccY * 10.0 + getPositionY(ship);
setPosition(ship, x, y);// 船の向きを変える
setRotation(ship, AccGravityY);// タッチされるとその位置に船を動かす
if (TouchCount > 0)
setPosition(ship, TouchX1, TouchY1);
}
これだけ(主要コードは8行だけ)で、iPhoneを傾けると船に見立てた三角形がスルスルと動いて行きます。船先はちゃんと進行方向を向くし、画面からはみだした時はタッチで呼び戻せます。Objective-CとCocoa Touchに格闘している人からすれば、有り得ないくらいで、笑うしかないですね。Processingをさらに簡易にしたような感じかな。
MobilizingはC言語風のスクリプトを書いて、パーサ(インタプリタ)込みでビルドしてiOSアプリを作っちゃいます。つまり、通常のXCode+iOS SDKを使うので、シミュレータでもデバイスでも動作して、App Storeにも出すことができるという優れモノ。ただし、機能は限定されいて、洗練されていない部分もあります。まだベータ版の段階で鋭意改善中ってワケで、いずれオープソースのフリーウェアとしてリリースされる予定です。
今回はヨーロッパ圏外では初のワークショップで、特にアート系の人からは驚嘆かつ大好評をいただきました。より深く行なって欲しいとのオファーもいくつかあって、さっそく来月に3日間のワークショップを開催することに。こちらがビックリするくらい反応が早いですね〜
【追記】いくつかお問い合わせをいただきましたが、現時点では公開時期は決まっておりません。せめて、と言うことで、ワークショップでのスライド(PDF)を公開します。現在実装されている機能の概要(10ページ目)なども載っています。