見出し画像

JIS BASIC - いったい誰のための規格なのか

いろいろなプログラミング言語を紐解くと、その多くは個別の実装ではなく国際的な規格で決められています。日本に於いては日本産業規格(旧 日本工業規格)であるJISで「日本語」で規定されています。プログラミング言語に関しては、X3000で始まる「電子計算機用プログラム言語」というカテゴリです。ここにFortranを始めC言語やPascal、C++、C#そして最近ではRubyも規格化されました。

日本産業規格(情報処理)の一覧

今は基本的には独自のものではなく国際規格を翻訳したものとして決められていますが、日本語という言語の特性から日本語の文章を解釈するのは思いの外難しく、原規格を参照するほうが分かりやすいこともシバシバです。

この中には先日60歳を迎えたBASICに対するJIS X-3003としての規格もあるのですが、今の規格は1991年にISOで定められたものがベースとなっています。実は最初にBASICのJISが定められたのは1982年で、この時代に圧倒的に普及したパソコンのBASICを標準化しようと試みられた内容でした。

BASIC60歳おめでとう

古い規格を探し出すのはなかなか大変なのですが、幸いにして解説記事がbit誌の1982年7月号に掲載されており、このKindle版が安価に入手できるので、気になる方はチェックしてみてください。

【電子復刻版】bit 1982年07月号(通巻161号) Kindle版

※P25から「JIS基本BASICの要点」という記事があります

デファクトスタンダードだったマイクロソフトBASICの影響は随所に見られるものの互換性の低かった機能を切り離し、インタプリタではなくコンパイラとして実装するための微妙な修正も行われているようです。これはBASICの習得者が大変に多くなり、大型機においても利用可能にするという目的もあったようです。ただ標準を決めたところで、その実装が広まったのかといえばそんなことはなく、学習目的で使われる程度で試験の題材としては使われたことはあるようです。

BASIC(「基本BASIC」という標準化、およびその失敗)

文法の規定をとっても既にある実装と矛盾しないために無理をしたところが見て取れて「これはちょっと」と思うところも散見されました。たまたまなんですが当時大学生だったので、ちょうど規格制定に携わった方の授業を受けることになったのですが「(自分で決めたこともあって)この素晴らしい規格は」みたいな説明が多かったこともあり、素直に感想を述べたところ、いたく教授に嫌われまして教室から追い出された苦い経験があります。

基本JISーBASIC

※これが教科書でした

その後、原規格も改定され10進計算を基本としたFull BASICという言語が規定されました。こちらは構造化された構文を持ち、かなり現代的なものとなり自由に使える実装も用意されています。

Full BASICとは?

BASIC

JIS Full BASIC 入門

https://www.koshigaya.bunkyo.ac.jp/shiraish/basic/tutorial/tutorial.pdf

マイクロソフト系のBASICでは馴染の無い命令も数多くあり戸惑うところもありますが、実装依存のことが多い数値の取り扱いやファイル処理についてもきちんと書かれており「なるほどね」と読みながら相槌をうってしまいます。まあ相変わらず読みにくい日本語なんですけど。

JIS X 3003-1992

しかし、この規格に沿って処理系が作られるようになったのかというと非常に限られていますし、コードの資産としても教育目的のものしか見つかっていません。せっかく規格が作られたのにもかかわらず「時すでに遅し」で、これを参照する相手がなくなってしまったようです。もともとBASICはコンピュータの初心者向けの教育的な言語ではあったのですが、コンピュータの能力がびっくりするほど向上した結果、プログラミングに求められる考え方が変化してしまい、今から初学者がプログラミング言語を覚えるのであれば、より相応しい言語が他にあると思います。そうなるとBASICは、もはや過去の資産こそが大切なものであって、そこにはJIS BASICが登場する余地はありません。

まあ1980年代はそれだけ重要な言語であったのですけどね。C言語以上に長い付き合いなので想いも深いものがあります。

ヘッダ画像は、Copilotに作ってもらいました。

#BASIC #基本BASIC #JIS規格 #X3003 #FullBASIC  

この記事が気に入ったらサポートをしてみませんか?