MicrosoftのSmall Basicを試していました

http://blogs.msdn.com/mikion/archive/2008/11/04/small-basic.aspx で紹介されていた。
http://msdn.microsoft.com/ja-jp/devlabs/cc950524(en-us).aspx からダウンロードできる。


起動するとエディタが出てくるのでそこにプログラムを書いてF5を押すと実行できる。SaveとかPublishとかはツールバーでできるみたい。


組み込みクラスのようなものがあるがオブジェクトは作れない。逆にそういうのをそぎ落とした結果、勉強することが非常に少なくシンプルになっている。いにしえのBasicにはストリング変数があったけどSmall Basicでは同じ変数に文字列も数値も入るので問題ない。


組み込みクラスにはキャッチーなものが用意されていて、下記のようなコードを書くだけで10秒間に1回Flickrから山の画像をランダムに取得して壁紙が変わるプログラムになる。

For i = 1 To 10
 pic = Flickr.GetRandomPicture("mountains")
 Desktop.SetWallPaper(pic)
 Program.Delay(10000)
EndFor

一緒にインストールされる「Introducing Small Basic.pdf」というドキュメントが結構いけてて、初めての人へのコンピュータプログラムの紹介みたいな感じの流れになっている。僕はForループよりも先に下記のようなGoto文でのループの作り方が紹介されていたのでこのドキュメントを好きになった。

i = 1
start:
TextWindow.WriteLine(i)
i = i + 1
If (i < 25) Then
 Goto start
EndIf

結構面白いとは思うけどやっぱりこれを何かに使うってのはまだ厳しいかな。特にテキスト系の組み込み関数がパワー不足で、例えば冒頭のスクリーンショットのようなプログラムだとやっぱりhotentryのエントリ名くらいは表示させたいよなー、と思っちゃうんだけどそれをやるのは(今のバージョンでは)とても難しい。