はじめに
2020.03.15
[ご注意ください]
 このカテゴリーは、Tiny BASIC for Windows(takeuchi氏制作)を使ってコンピュータのプログラミングをやってみましょう、という趣旨のサイトです。主として
(1)Word、Excel等でパソコンはある程度使っているけど、自分でプログラムを作ったことはない
(2)小学校でプログラミング教育を担当することになったけどプログラミングって何をどう考えたらよいのかわからない
(3)昔、BASICでプログラムを作っていたが、最近のBASICはやったことがない
という方のために立ち上げました。
 申し訳ありませんが、パソコンに触れるのが全く初めてという方(電源ってどうやって入れるの?、キー操作がわからない)は対象にしていません。そういう場合は、最初にお使いになるパソコンの取り扱い説明書等で確認しておいてください。
最新のプログラミング言語をマスターすることは目的としていませんのでご了承ください。
 ページ中のサンプルはWindows10パソコンにインストールしたTiny BASIC for Windowsで作成したものです。Windowsの他のバージョンをお使いの方は、多少表示が異なる部分があることをお含みおきください。


 当カテゴリーはプログラミングを通して、コンピュータのことをもっと知ろう、という方々も対象としています。筆者が勤務する富山大学人間発達科学部の学生で教養科目の「コンピュータの話」「情報処理」などをすでに履修した方にとっては、これらの授業で学んだことと重複する部分もありますが、当カテゴリーの趣旨をご理解ください。

[BASIC言語]


 コンピュータの中味は膨大な数の電気スイッチです。なので本来コンピュータに何か仕事をさせるには、電気のON/OFFを0と1に置き換えたもの(機械語)で指示を与えなくてはなりません。しかし下のような機械語プログラムはコンピュータには理解できても、私たちがこれをわかるようになるためには、使うコンピュータの内部構造についてかなり専門的な知識が必要な上にこの方法でプログラムを作るには膨大な時間がかかります。


     00111000
     00100111
     00011011

     機械語によるプログラムのイメージ


 コンピュータが電子工学の専門家や数学者によってのみ使われていた時代ならともかく、1946年に世界最初の電子計算機ENIACが誕生してわずか10年後には、コンピュータの専門家でなくてもプログラミングができるようなツールが求められるようになりました。こうして生まれたのがプログラミング言語(人間にわかりやすい言葉で書かれたプログラムを機械語に変換するもの)です。科学技術計算向けのFORTRAN、事務処理向けのCOBOLが1950年代半ばに次々と発表され、1964年にはアメリカのダートマス大学で、数学者・教育者のジョン・ケメニー(John G. Kemeny)とトーマス・カーツ(Thomas E. Kurtz)により文系の学生でも比較的に容易にプログラミングができる言語が発表されました。その言語はBeginner's All-purpose Symbolic Instruction Code(初心者向け汎用記号命令コード)という名称で、頭文字をとってBASIC言語(当カテゴリーでは以下、BASICと略記)と呼ばれるようになりました。 BASICはその後、1970年代後半には、パソコン(当時はマイコンといいました)に標準で搭載されるプログラミング言語としてそのユーザーを増やしてゆきましたが、あくまでゲームプログラムなどホビー用としての需要が高く、これで研究用・実務用のプログラムが作成されることはあまりありませんでした。
 しかし2000年以後にアメリカのマイクロソフト社がVisual BASICを発表すると様相が一変しました。Visual BASICはそれまでのBASICでは出来なかった構造化プログラミングを可能にし、またWindowsフォームが簡単に扱えるという特徴があり、実務プログラムの作成にも充分耐えられるものでした(現在のバージョンはVisual BASIC 2019、2020/03/22現在)。そして最近、BASICが再び入門用プログラミング言語として脚光を浴びるようになってきました。


[当カテゴリーで用いるTiny BASIC for Windowsについて]

 「Tiny BASIC」という名前を聞いて「懐かしい」と思われた方は、たぶん私と同世代以上で、昭和55~60年頃にご自分でゲームプログラムなどを作ったことのある方でしょう。これは元々はその頃発売されたパソコンに搭載されていたBASICの総称です。その後に標準搭載になったマイクロソフト系のBASICに比べて使える命令や関数が少なかったり変数名や配列名などに制限があったりしたもののプログラミングに必要最小限の機能は備わっていたため、当時はこれでプログラミングを勉強したユーザーも多かったものでした。
 これから使おうとしている「Tiny BASIC for Windows」は、現在のWindowsパソコンで使えるBASICのひとつです。「Tiny BASIC」という名前になっていますが、昔のTiny BASICとは比較にならないほど機能が充実している上に、昔のBASICでは困難だった「構造化プログラミング」も可能になり、かつマイクロソフトのVisual BASICとの互換性も高いものです。
 ですから、昔Tiny BASICをおやりになったことがある方は、名前は同じでも全く違うBASICとお考えいただいた方がよろしいかと思います。尚、当カテゴリーで以後「Tiny BASIC」といった場合、とくにことわりがない限り「Tiny BASIC for Windows」のこととします。
 また当カテゴリーは、学校で「プログラミングの授業をやらなくてはならなくなった。でも自分でコンピュータのプログラムなんて作ったことないし、プログラミング的思考なんて言われてもなんのことかわからない。何とかひととおりプログラミングをやってみなきゃ。期間は1週間しかない」という先生方のことも考えて作りました。したがってTiny BASICのすべての機能についてお話するわけではありません。Tiny BASICは制作者のtakeuchiさんが、完全なマニュアルと入門書を公開されています。「急いではいないのでコンピュータのプログラミングを初歩から上級レベルまでがっちり勉強したい」という方はそちらをご覧ください。

Tiny Basic for Windows home page
http://www.tbasic.org/

 また当カテゴリーの記事は筆者が本業(あくまでピアノの先生です。「その顔でかよ!」と突っ込まれそうですが)の合間を見つけて書いています。1日1記事を目標にしたいとは思いますが、そうはいかない時もあります。全部書き上がるのは2021年のGWくらいになるかもしれないことをお含みおきいただけますと幸いです(冷汗)。

- CafeNote -