BASICの世界へ

BASICは、初心者向けに設計されたプログラミング言語の一種です。複雑な制御構文や高度なデータ構造などはありませんが、実用上そこそこ使えるレベルの言語仕様がわかりやすい体系でまとめられています。初期のパソコンに標準搭載されたこともあって、前世紀には主要なプログラミング言語として学校で、企業で使用されていました(今でもセンター試験の数学にBASICプログラミングの問題が出てきますね)。
今「IT業界」の第一線で活躍されている「元パソコン少年」の中にも、このBASICでプログラミングを覚えた、という人が多いことでしょう。

ただ、90年代後半以降はウインドウ環境やインターネットが普及し、それに伴ってプログラミング言語の主流もJavaやC++といった「C言語とその子孫」が中心になってしまい、(生粋の)BASICは次第に「隅」へと追いやられます。つい最近までは、「流行」を取り入れたBASICの仲間、VisualBasicが割とがんばっていたのですが、これもC#の登場で立場がなくなりつつあるようです(それ以前にそもそもVisualBasicは「BASIC」じゃないだろ、という声もありますが(^^;)。

BASICという言語はプログラムを「一本の流れ」として処理することを前提にした言語なので、今となっては「古い」面があるんですよね。最近の流行は、「まず、ウインドウを作成し、ボタンを配置」「ボタンがクリックされたら、こうする」といった「オブジェクト指向」「イベント駆動」プログラミングになっていますが、BASICはこうしたスタイルのプログラミングにはあまり向いていません。 こうした最近(ウインドウシステムとオブジェクト指向プログラミング全盛時代)の「流行」とあまり相性が良くないことが、BASIC退潮の背景にあるのでしょう。

ただ、この点は逆にBASICの利点でもあります。Javaをはじめとする「今風」の言語は、とにかく「やりたいこと」をはじめるまでの「準備」が多いのです。単に「文字を表示する」場合でも、まずメインクラスをつくってそこでウインドウを作成、さらにウインドウに文字を表示するコンポーネントを配置し、プロパティに文字列を設定……といった感じで、プログラムも数十行になる場合も。
その点、BASICなら「Print "test"」とするだけで、testという文字を表示することができます。ウインドウがどうの、コンポーネントがどうの、main関数がどうの、などということは気にする必要もなし。気軽に「やりたいこと」だけを書いてすぐに実行できます。ウインドウやらGUIやらといった「表層」的な部分はおいておいて、まず自分でくみ上げた処理を実行する「プログラミング」そのものを試し学習していくには、最適の環境といえるでしょう。

ここでは、そんなBASIC言語で簡単なゲームをはじめとするプログラムを作りながら、プログラミングの世界を散策してみることにします。

BASICの部屋