スポンサーリンク

やっぱり BASIC には GOTO なのね

 マイクロソフトが教育用のBASIC開発環境、「Small Basic v0.3」をリリースしたってんで、早速みてみました。といっても、チュートリアル(Started Guide)を読んだだけですけど・・・。

 だって、Small Basic を動かすには .NET Framework 3.5 が必要なんですが、入れるのが面倒だったんですよ。

 で、チュートリアルを読んだ感想なんですが、いきなり TextWindow.WriteLine("Hello World") なんて文が出てきて「おぉ!オブジェクト指向ですか?」と思ったんですが、どうも入出力関係のところだけこういう記述で、特にオブジェクト指向ってわけではないようです。

 制御文として出てきたのは、If と Label と Goto と For と While。って GOTO ですって!あれだけ世のプログラマーが「GOTO はやめよう!」と言ってるんだから無くせば良かったのに。なんで今更、実装したかなぁ?

 他には、サブルーチンの説明とグラフィック関係の命令が一式。最後にちょっとしたゲームのソースが付いてました。

 あと、細かいことなんだけど、IF 文で右辺と左辺が等しい場合を判定する比較演算子が = なんですよね。== に慣れた身としては、ちょっと違和感を感じました。

 また、言語のリファレンスが無いみたいなんですけど、ヘルプが自動的に画面の右側に出るそうなので必要ないんでしょうかねぇ。コードの補完機能もあるそうですし。

 とはいえ、こういった学習用の環境をフリーで出してくるあたり、マイクロソフトの懐の深さを感じますね。

 なお、プラットフォームは Windows XP or Windows Vista だそうです。

参照リンク
 ・2009/02/19/SmallBasic試してみた - くじらぶろぐD
 ・Small Basic
 ・ダウンロードの詳細 : .NET Framework 3.5

スポンサーリンク
コメント

どうも突然スミマセン。自分の名前でググっていて(これをEgo Googlingというらしいですね)見つけました。

さて、会社で最近Visual Basicをやらされていますが、Perl で next や last を使えばできるときは Goto を使っていいという個人的ルールにしています。

For Each myObject in myCollection
 somethingGood
 If someCondition Then
  Goto next_for_myObject
 End If
 somethingGood2
next_for_myObject:
Next myObject

自分なりに飛び先のラベルを分かりやすくすることで、Gotoの弊害を最小限にしているつもりです。

VBは(たぶん記事のSimple Basicも)Exit For という last に相当するのがあるので、ループの脱出は使わなくてもいいような気もしますが、これも多重ループの脱出の場合は使えます。Perl の last は引数にラベルが渡せるので goto は使わなくていいんですけどね~~

コメントありがとうございます。

なるほどぉ。確かにループを途中で抜ける方法は必要ですよね。

でも、じゃぁなんで next や last 、もしくは break や continue (まぁ、何でもいいんですけど)を実装しなかったんでしょうねぇ?

しかし、VBも同様だったとは知りませんでした。やっぱり BASIC を BASIC たらしめるには、GOTO が必要ということでしょうか。

相方のブログを読んでて、正座してしまったのは初めてのような気が(汗)
深沢さんの本には、お世話になってます。
まったくの素人の私でも、「おもしろい」、「興味ぶかい」と思いながら、読ませていただいています。
いつもありがとうございます。

>相方
ごめん。
どうしても、深沢さんにメッセージを書きたかったさ……

Verify your Comment
Previewing your Comment

This is only a preview. Your comment has not yet been posted.

Working...
Your comment could not be posted. Error type:
Your comment has been posted. Post another comment

The letters and numbers you entered did not match the image. Please try again.

As a final step before posting your comment, enter the letters and numbers you see in the image below. This prevents automated programs from posting comments.

Having trouble reading this image? View an alternate.

Working...

コメントを投稿
おすすめの記事と広告

プロフィール


  • 書いてる人:夢界 陸

    名古屋在住のおっさん。
    プログラミングやガジェットの話など、 日々の興味を徒然と綴っています。



    Twitterやってます @mukairiku

    運営サイト
    www.mukairiku.net

ブログ内検索

Licenses

  • Creative Commons License

OTHER

  • このブログのはてなブックマーク数

Blog powered by TypePad

スポンサーリンク