ソフトウェアとの付き合い
An Experience in Software Development
大筆

豊

OHFUDE Yutaka

鳥取環境大学紀要
第９号・第10号合併号

2012．３抜刷

Reprinted ftom
BULLETIN OF TOTTORI UNIVERSITY OF ENVIRONMENTAL STUDIES
Volumes 9 & 10

Mar. 2012

鳥取環境大学紀要
第９号・第10号合併号（2012.３）pp.１‑９

ソフトウェアとの付き合い
An Experience in Software Development
大筆

豊

OHFUDE Yutaka
４回生になり研究室配属のとき、もちろん、（日本の１．はじめに鳥取環境大学を退職するにあたり、最終講義の内容をコンピュータの草分けの１人である萩原宏教授の）計算

文章にせよとの紀要委員会の指示があり、以下のように機講座を希望した。６人の枠に対して７人の希望者があ

まとめてみた。私は何かの間違いで大学の教員になった

り駄目かなと思っていると、先生が「全部まとめて面倒が、研究者としての実績は殆どなく、研究についてでは見るよ」とのことで助かった。修士課程にもその７人となく実践的なことしか書けず、また文章としても品位のも志願し、全員進学した。大学院の試験では、筆記試験

ないものになったと思うが、ある１人の老いたるプログの後、１人づつ、教授陣全員が並ぶ前での面接があり、ラマの生き様が、後進に何かの役に立てばと願うばかり

萩原先生が「私の答案に名前を書いていない学生がいてである。

ね」と話された。当然私のことらしいので「しまった、
今度こそ駄目か、就職活動をしないといかんな」と思っていたが、またも助けてもらったらしい。私のようにケ

２．プログラマ（子供の頃の憧れ）
もう60年も前、小学校の中学年の頃であったか、リーアレスミスをするものはプログラマに向かない。工学部

ダースダイジェストという雑誌で、毎日頭をひねりパズの大学院とは、上級技術者の養成所であると勘違いしてルやゲームをしているような面白い職業が生まれたとのいたが、研究者を育てるところらしく、私の肌には合わ

記事を読んだことがある。アメリカでコンピュータプロ

ず、博士課程には行かず就職した。技術者として頑張る

グラマが正式の職業として認知された頃である。将棋やぞとの夢を見て。工学部の修士課程は技術者教育に徹す

囲碁を覚えだしたころなので面白そうだな、できれば将べきであると今でも思っているが、大学教員の多くは研来やってみたいな、と思っていた。

究者を養成したがっているようだ。

３．ノーベル賞狙いから技術者へ

４．恥ずかしながら研究員

理数が好きなので、湯川さんの跡をついでノーベル賞

計算機関連の企業ならどこでもよかったのであるが、でも取ってやろうかなと、京都大学の理学部を受験した

同期の友人がまだ決めていない東芝に入れた。１ヶ月間が、どういうわけか意見があわなかった。予備校では結の新人教育が終わるとき、配属先の希望を３つ書かされ構秀才であったが浪人してまでノーベル賞はないだろう

たが、もちろん研究所なんて想定外であり書かなかった。

と、工学部を目指すことにした。工学部の数理工学科に配属先の発表がある前日の日曜日に、本社に呼び出され計算機工学講座があるのを知り、子供の頃の憧れもあり、た。希望部門とミスマッチした20人ほどが呼び出されてそこに挑戦し、幸いなことに二浪しないですんだ。３回

おり、廊下で待っていた。１人づつ呼ばれ、私には「君生のとき、演習授業で初めてプログラムを組んだ。課題は研究所を希望していないが、研究所でいいな」との脅

は連立一次方程式の解を掃き出し法で求めるものであ迫である。会社対新人、力関係から言っていやとも言えり、８進数の機械命令で200ステップくらいだったと思ず夢が破れる。それ以来東芝での研究所暮らしが28年もう。プログラムを組む楽しみを初めて知ったが、同時に続いた。研究所にいる限りは研究者と言うらしいが、とデバッグ（誤りの修正）の辛さを思い知らされた。友人てもそんな玉ではなく、場違いもいいところだが、ソフは楽々と答えを出すのに、何度やっても駄目で最後まで

トウェア関連の研究グループの一員になった。人間万事

行き着かなかった。

塞翁が馬、何が、幸か不幸か、わからない。研究所にい―1―

鳥取環境大学紀要

第９号・第10号合併号

たからこそ、年を食ってから、社外の委員会活動や学会数百枚にわたりトレース情報がバタバタと出力される。

活動、大学との対応に駆り出され、結果として鳥取環境

バグがあるとき実行の順にトレース情報が出力されてい大学に誘われたのだから。

るので、どこを通ったか、変な値になっている部分があればどこかがすぐにわかるようになった。その結果、デバッグの効率が上がり、1000ステップのプログラムでも５．究極のバグラー
当時、研究所には TOSBAC‑3400という計算機が鎮座していたが、主記憶容量は64Ｋ語（24ビットマシンだか

数回のランで完成するようになった。ただし、ラインプ
リンタの用紙は私が使うたびに減り方の早いこと。

ら192Ｋバイト）、今のパソコンと比べても千分の一くらいで玩具以下である。しばらくは、好き勝手に玉突きの

６‑３

人の成果をタダ食いする輩

シミュレーションなど何の役にも立たないプログラムを私のやり方を見ていた同僚連中が、厚かましくも私の作っていた。プログラムを作るのは好きだから、幾らでトレーサを無料でコピーして使っていた。今から思うと、も作るのだが、作っても思い通りに動かない。私の場合、せっかく使ってくれているので、使用前・使用後のデー

30ステップに１回はバグ（誤り）を製造する。これは一タをとり「効率的なデバッグの手法の実践例」くらいで種の才能であり、他人には負けない。1000ステップくら

論文にまとめられたと思う。悲しいかな、自分が研究者

いのプログラムなら30個くらいのバグがあり、１個のバであるなんてこれっぽっちも思っていなかったので、グを取るのに１回計算機で走らすこと（ラン）が必要とデータも取っていなかったし、論文なんか書いていない。

すると、30回のランが必要になる。ほかの人なら悠々数

その後、使用するコンピュータが変わるたびにまずト

回のランですむのに情けない。究極のバグラー（バグ生

レーサを作り、自分のためだけでなく同僚も使えるよう産者）というところ。バグラーはバグラーなりに良い事にしていた。事業部のプログラマにも宣伝していればがある。情けない、恥ずかしい、としょげるだけでなく、使って貰っていたかもしれない。

どうすればいいかとけなげにも考えることになるからで
７．けなげな工夫２：設計言語とデュアルコーディング

ある。

７‑１

当時、プログラムの設計はフローチャートで行うのが６．けなげな工夫１：トレーサ
６‑１

高水準言語による設計

普通であった。フローチャートは２次元の図であり、きトレーサプログラムは命令を順に書いていくが、その実行は条れいに書くのは面倒であるし、配置を工夫しないと読み件により分岐したり繰り返したりするので、動的な動きにくい、設計とプログラムの対応が明確でないなど、私を理解する必要がある。たとえば、気になる時点での変は好きではなかった。

数の値をそこで止めて確認するなどができればよい。こ研究所の先輩がソフトウェアを外注をするのに、仕様れをやるのにトレーサが便利であるが、１人がコン書として FORTRAN でプログラムを作り、それをアセピュータを独占することになる。

ンブラで書き直すようにプログラマに指示していた。
FORTRAN では正しく動くのだが、メモリ容量を減ら

６‑２

し実行速度を上げるため、アセンブラで書き直す必要が

紙の無駄遣いの疑似トレーサ

研究所にはコンピュータは１台しかなく、多くのプログラムを同時に実行するためバッチ方式で使用しておあったからである。高水準言語で設計する手法の一種である。

り、複数のプログラムのカードをカードリーダで次々読ませ、次々に実行させ結果をプリンタで出力する。そこ

７‑２

自己流設計言語の発明

で私は次のような疑似トレーサを作った。分岐するとき

先輩のやり方に触発され、自分流の設計言語を発明しは分岐元と分岐先で、サブルーチンを呼び出すときは、使っていた。たとえば「もし子供が男なら野球の選手に呼び出し命令とサブルーチンの入り口・出口で、番地とする、そうでなければバレリーナにする」という文を
if 子供

すべてのレジスタの値をラインプリンタ１行120桁にほ=男

ぼ一杯バタバタと出力させた。アセンブラによるプログ

then 野球の選手にするラミングであったがマクロを旨く使って簡単にその処理

else バレリーナにするを書けるように工夫をした。私がプログラムを実行させとすれば、一見プログラム風になる。条件分岐を「if〜

ると、いつでもラインプリンタの何十枚、多いときにはthen〜else」、繰り返しを「while〜do」など ALGOL 風

―2―

大筆

ソフトウェアとの付き合いに書き、処理の部分は日本語で書いていく方法で設計す８．ALGOL‑N という言語のコンパイラ開発

る。私なりに工夫したものではあったが、すでにほかで

８‑１

コンパイラ開発の願望も使われており擬似言語というらしく私の発明ではな

入社して２年ほどは、国家プロジェクトの一環で、い。こうすると設計記述が１次元になり、かつ、論理がLSI 設計用の CAD のプログラムの開発を担当してい明確になり、そのうえプログラミングとの対応がしやすた。それが終わったとき、東大出身の先輩から「これかくなる。

ら何かやりたいことがあるの」と聞かれ「コンパイラを作りたい」と答えると、「ALGOL‑N をやれば」と言わ７‑３れた。早速、東大のＷ教授のところに連れて行かれ、お一意的なプログラミング

何度も試行錯誤しながら工夫していくと、同じ設計か話を聞くとともに修士課程のＫ氏（現早稲田大学教授）

らほぼ一意的にプログラミングをすることが可能になっを紹介され、毎週１回研究所に来ていただきコンパイラ

た。一意的にプログラミングできることから、設計言語の作り方を教えて戴くことになった（本音から言えば囲による設計をもとにプログラミングをしてから、何日か碁のプログラムを作りかったが、私の真面目な性格が災時間を置いてから、同じ設計からもう一度プログラミン

いし、さすがにそれは言えなかった）。

グを行い、前のプログラムと対比させる。違うところがあるとどちらかにバグがあるはずであるから、その部分

８‑２

ALGOL‑Nを修正すればよい。私のように30ステップに１回はバグ

ALGOL‑N というのは、欧州で開発された自己増殖言を作る名人でもこの操作を行うことにより「30×30＝

語 ALGOL68に対抗して日本の学者が集まり作られた言900」であるので、1000ステップ程度のプログラムなら語である。自己増殖言語とは、言語仕様を使用者が定義

１回のランで完成することになる。実際には、設計そのできるようになっており、言語そのものを拡張できる言

ものに誤りがある、あるいは２回とも同じところで同じ語で、一種のコンパイラコンパイラ（コンパイラを開発

誤りをするなどがあり、そんなに甘くないのだが、飛躍するためのコンパイラ）である。ALGOL‑N のコンパイ

的に早くデバッグできるようになった。これも私が編み

ラは東大（Ｋ氏）や日立中央研究所などで作られていた出した手法であるが、同じような手法があり、デュアル

が東芝でもやらないかといわれていたようだ。
私を含め社内で５人位、関連のソフトウェア会社から

コーディング（Dual Coding）と呼ばれていたことを後

５人位、合計10人位のチームで開発することになった。

で知った。

入社して数年しかたっていない、バグだけは立派に製造
７‑４

できるが、コンパイラを作りたいという願望はあっても社内でも使う人が出てきた

自慢じゃないがこの手法も論文にしていないが（論文

その技術もない若造に、何故作らせたのか不思議である。

になるという意識も全くなかったが）、セミナー業者の

昔はのどかでよかったというしかない。普通のコンパイ主催するプログラミング技術のセミナーで話したことがラも作ったことがないのに、いきなり自己増殖型言語とある。セミナーのために、20ページ位の予稿を書いたが、は荷が重い。

それを見た社内のソフトウェア生産技術関係の人が改めて印刷し、社内のいろんな部門に配布してくれたので、

８‑３

非終端記号ごとの再帰ルーチン

設計言語を使うこの手法を多くの人が使ってくれた。印

Ｋ氏に教えてもらった手法は、「非終端記号」ごとに税も貰っていないので、著作権侵害であるのは明らかで

再帰呼び出しのルーチンを作るトップダウン手法でああるが異議申し立てはしていない。役に立ってくれればる。たとえば「私は日本人です」という文を、「文＝主それでいい、というより我が幸せである。理学は真理の語＋述語」、「主語＝名詞＋助詞、述語＝名詞＋助動詞」、

発見が主題であり、オリジナリティが重視されるが、工「名詞＝私、日本人、助詞＝は、助動詞＝です」という学では役に立つ事が目的であり、新規性は２の次である

風に分解すると、文の構造を文法的に説明できる。言語と思っている。新規性（珍奇性）を追求するあまり、糞理論では「文、主語、述語、名詞、助詞、助動詞」を非の役にも立たない重箱の隅を突っつくような研究をする

終端記号、「私、は、日本人、です」は実際の文に現れ輩が多いが私の趣味に合わない。まあ好きにやっておく

るので終端記号という。非終端記号「文」、「主語」
、
「述

れやす。

語」、「名詞」などに対してそれぞれ再帰的なサブルーチンを作り、その中で解析したりオブジェクトコードを作成する手法である。

―3―

鳥取環境大学紀要

８‑４

第９号・第10号合併号

A4で４〜５枚の手書きのもので、殆ど言語構文だけ

デバッグマシンを求めて放浪の旅

開 発 は TOSBAC‑5600 と い う 当 時 の 大 型 計 算 機 でのようなちゃちなものである。研究所長から「開発する行った。研究所には１台だけ、社内にも本社の情報シスのに幾らかかるか」と問われ「人件費換算で3000万円掛

テム部門にあるくらいで、デバッグも容易ではない。デ

かります」と答えた。もっと安く言い、開発させて貰え

バッグやテストをするために、電気試験所（現在の電子るようにすればよかったが、ALGOL‑N では5000万円換

技術総合研究所）や子会社の計算センターのマシンを使算の金が掛かって結局使い物にならなかったので、正直わせてもらいに放浪の旅をした。ある部分をテストしたに、安全をとり多めに言ったのだが「そんなに掛かるか」

いとき、その部分を開発した担当者と私が出かけて行っと没になった。

たが、他のメンバーからは、その間何をしたら良いかわ
からないと文句が出る。
別の部分についても同様である。

９‑２

チームプレーをしているときリーダが部分の開発に没頭

PL360

PL360は Pascal などを開発したスイス人 Wirth（ヴィ

結局リーダである私が何時も席にいないことになる。

ルト）が IBM360用に開発した言語で、
if R１ > ０

するとチーム全体として機能しなくなるのを実感した。
リーダは我慢してでも、全体を見渡すためにどっかりと

then R２ = １

デスクに座っているべきである。

else R２ = ０のようにコンピュータ内部のレジスタも陽に記述する構

８‑５

造化アセンブラといった中水準言語である。私は「if〜開発完了と同時に没10人のチームで約２年間かかりやっと完成した。完成

fi」、「while〜elihw」、「when〜nehw」、「for〜rof」のよしたといっても、私が始めに設定した13個のテストプロ

うに、先頭のキイワードを逆にしたものを最後に書き制

グラムを何とか実行できるようになっただけで、まだバ御構造が明確になるように、余計なことを追加していたグだらけであったと思う。それでも先輩が手配してくれが。これは、ALGOL68で「if〜fi」、「do〜od」のようにて、そのコンパイラを情報システム部門の計算機に登録用いられた手法で、いつか使ってやろうと思っていたもしたので全社で使えるようになった。皆さんに使ってものである。

らうには教育・宣伝をする必要があるなと思っているとき、突然電話がかかってきて「こんな下らないコンパイ

９‑３

コンパイラの開発を即決で決断ラを作ったのはお前か、システムから追い出すからな」

しばらくしてＴ氏（後に徳島大教授）が、東芝も参加との丁重なご挨拶。情報システム部門の責任者Ｙ氏で当していたパターン大プロという国家プロジェクトの、東時課長クラスの人だがそのときは面識がなかった。
（東

芝側のリーダとして事業部から研究所に戻ってこられ

芝の計算機分野での実力者で、怖ろしいことに、その後た。TLCS‑12用に作った先ほどの仕様書を持って行き、20年以上にわたり何度もベロベロとかわいがられた。怖「こんなもん考えていました」と見せると、即座に「ミかったの何の）。

ニコン TOSBAC‑40用にコンパイラを半年で作れ。メン

10人で２年がかりで開発したものがあっけなく没にバーとして４人つける。文書は相互チェックをすること」

なってしまった。技術者１人雇うのに今なら1000万円かとの指示を出された。私はまだヒラであったがＴ氏は部かる。研究所長に「5000万円（今なら２億円）の損害を長クラスである。今思うと物怖じもせず厚かましいこと

かけてしまいました」と謝ると「だんない、だんない、をやったものだ。言語の規模は違うが ALGOL‑N では教育費」との一言。正直助かった。

10人で２年もかけたので、本当にやれるのか心配であったが「やります、そのかわり宣伝はお願いします」と返

９．PL/40というコンパイラの開発事した。開発させてもらえるだけ嬉しかった。つけられ９‑１ TLCS‑12というマイクロコンピュータ

た４人は、男性２名（Ａ、Ｂ）、女性２名（Ｃ、Ｄ）の東芝では、米国 Ford 社のエンジンコントロール用に12ビットのマイクロコンピュータ（TLCS‑12）を開発し新人ばかり。要するに開発経験をつけさせて教育しろということらしい。

ていた。インテルの４ビットマイコンが始めて市場に出

ALGOL‑N では失敗したものの、曲がりなりにもコンだした頃で、世界でも最先端を走っていたと思う。ある

パイラの作り方をマスタしていたので２〜３日のうち事業部から TLCS‑12用に言語を開発して欲しいというに、言語仕様を TOSBAC‑40用に書き換え、コンパイラ要望があり、PL360をベースに言語仕様を作り提案した。

のアーキテクチャを決め、自分も含めて５人の分担を決

―4―

大筆

ソフトウェアとの付き合いめた。私以外のメンバーは新人ばかりであったので、私マニュアルを作りＴ氏に報告すると、図書館に持ち込み

自身は全体の３分の１を分担した。設計の仕方はもちろタイプし印刷してくれた。ワープロもない時代で、自分

ん ALGOL‑N でやった非終端記号ルーチンを再帰的にの作成した文書が活字化されたのは始めての経験であ呼ぶ出す方式で、設計の記述方法は、私流の設計言語でり、それだけでも感激したものである。TOSBAC‑40用ある。

だから PL/40と命名した。アセンブラで３万ステップく
らいであったが、私が定義したマクロを駆使していたの９‑４で、普通ならその倍は掛かっていたと思う。

チーフプログラマチーム

開発は、結果的にはチーフプログラマチームの形式をＴ氏に「宣伝してください」というと、自分でやれば取った。チーフプログラマチームというのは外科手術のとばかりに、社内の２部門を紹介して貰っただけである。

チームにたとえられ、執刀する外科医がすべての責任と一方はミニコンの基本ソフト部門で、部長のＨ氏以下20権限をもち、その他の人は、汗を拭いたり、メスを渡し

人位が会議室で聞いてくれた。１時間ほど説明して質疑たり、心電計を見ているなど補助的な作業をするだけでの時間になると、Ｈ氏がおもむろに「研究所で（頼まれもしないのに）何でこんなものを作ったのか？」
、
「評価

ある。
４人の作成した文書（設計、プログラム、テスト仕様をしたのか？」など厳しく追及してくる。もう一方は重など）のすべてを私がチェックした。それに加えて男性

電技術研究所の技監Ｍ氏（後に京大教授）がたった一人（Ａ，Ｂ）の２人、および女性（Ｃ，Ｄ）の２人は相互で対応してくれ「そうでっか、そうでっか」と頷くだけに文書をチェックし、私の作成した文書は修士を出たそで糠に釘。研究所長に「一方からはきつく言われるし、れなりに出来る男性（Ａ）にチェックしてもらった。自もう一方は糠に釘、やっぱりあきまへんわ」と報告する

分の分担分の開発以外、
メンバー全体の文書のチェック、と悲しそうな顔をしていた。所長にしても研究所の成果

テスト仕様の作成、マニュアルの作成などを行い、私のが売れれば嬉しいし点数になる。

負荷は想像を絶した。当時会社の儲けが少なく、研究所に割り当てられる残業時間は少なかった。おまけに残業

９‑６

セルフバージョンの開発

時間のほとんどは他のチームに配分され、私のチームに一月ほどして、基本ソフト部隊の30歳位の女性のプロは回ってこない。残業できないので定時になると書類をグラマから、「PL/40を使ってみて」という報告が届いた。

抱えて家に帰り、食事のあと午前２時、３時まで仕事を部長は厳しく言っていたが「まあ、遊んだれや」程度につづけた。会社で残業していれば遅くとも10時ごろには試用させたらしい。生産性や品質向上についての数値は帰るのだが、家で仕事に熱中すると歯止めがなくなる。

全くなく、A4で１枚だけの「結構面白い言語です」と

ALGOL‑N の失敗もあったので、断崖絶壁に立たされたいう報告。
また一月ほどすると、セルフバージョンを事業部で作ような気持ちである。もちろん土日にも家で仕事をしてるので今までの設計資料などすべて送れ、ついでに大筆いた。
５月の連休の前、Ｔ氏が心配なのか、Ｂ君の設計をも付けること、との司令がきた。セルフバージョンの開チェックし「何だこれは、書き直せ」と命令した。200ペー

発にも私が指導（というより邪魔）をすることになった。

ジほどの設計を、連休中Ｂ君は泣きながら書き直した。

研究所で開発したコンパイラは、大型機でコンパイル

私もすでにチェックしており「おや？」とは思っていた

してオブジェクトコードを紙テープで出力するクロスが「まあいいか」と大目にみていた。結果としてＢ君はバージョンである。セルフバージョンとはミニコン自身

大きく成長したと思う。人を育てるときには厳しさも必でコンパイルし、実行できるようにするものである。本要であると教えられたものだ。

音から言って、研究所で作ったものなんか危なくて使え

開発の途中で、府中工場のソフトウェア生産技術担当の課長から「PL/40のコンパイラ開発を、設計言語でやっない、製品にするには事業部で作り直すということであろう。

ているそうだが資料を送って欲しい」との電話があり、A4で10枚程度の資料を送った。説明に来いとも言われ

９‑７

やっと自分の作品が使ってもらえるか

セルフバージョンがもうすぐ完成するという時期、東なかったが、PL/40の普及の一助になったと思う。

芝府中工場で「ソフトウェア生産性向上事例発表会」な
９‑５

るものがあった。私もＨ氏の隣で聴講していた。ある部

宣伝活動は失敗か

約束どおり半年後にはコンパイラが完成し、手書きの門が「設計言語で設計し、それを元にアセンブラに変換―5―鳥取環境大学紀要

第９号・第10号合併号

すると、生産性・品質とも大幅に向上した」との発表が10．捕らぬ狸の皮算用あった。設計言語による私の手法が伝わったのか独自に

10‑１

費用削減効果府中工場だけで関連会社の人も含め１万人くらいの人

その部門で編み出したのかはわからないが。
それを聞いたＨ氏がフロアから「今まさに発表されたがおり、ほかに日野工場や青梅工場、小向工場、柳町工

技術を、コンパイラとして近く提供します、ぜひ使って場など多くの部門でミニコンを使うシステムを開発してください」と話された。やっと私のコンパイラが社内でいた。控えめに言って関連のソフトウェア会社を含め使ってもらえるのだと実感でき、涙があふれそうになっ2000人のプログラマが、Ｃ言語に移行するまで10年間以た。

上は使っていた。生産性は、アセンブラに比べて確実に20％は向上した。20％くらいしか生産性の向上が見込ま９‑８

れないから、移行に伴う教育費用やトラブルがあり、すアセンブラから PL/40へ

それまで、ミニコンのプログラムは殆どアセンブラでぐに元の技術や手法に戻ってしまう。いったん使い出し

開発され、実行効率を問題にしない一部のものだけた部門がアセンブラに戻らなかったのが、効果を実感しFORTRAN で開発されていた。PL/40が使えるようにた何よりの証拠である。

なってから TOSBAC‑40あるいはその後継機種のアプ

技術者１年間の費用を1000万円とする。PL/40を使う

リケーションのほぼすべてのプログラムが PL/40（あることによる削減効果は「2000人×10年×20％×1000万いは同種の言語）で開発されるようになった。当時、ミ円/人・年＝400億円」と計算できる。この数字は、きち

ニコンはシステム制御用という位置づけにあり、発電シ

んとデータを取っておればもっと大きくなったと思う。

ステム、配電システム、鉄鋼システム、化学プラント、

この言語を使うために多くの管理者や技術者が、苦労

水道システム、病院システム、交通システム、防衛シス

し・努力し・我慢したことは明らかであるが、一番頑張っ

テムなど社会のあらゆるシステムを制御するのに使われたのは私である。ゴルフでは賞金総額の20％が優勝者にていた。PL/40はそれらのシステムを開発するのにほぼ与えられることから、400億円の20％の80億円が私の貢全面的に使われるようになった。

献であると勝手に考える。まさに捕らぬ狸の皮算用。

PL/40は構造化アセンブラとしての位置づけにあり、
機械依存の言語である。アセンブラでプログラミングを

10‑２

本当の貢献者はするよりはるかに生産性が向上するものの、コンピュー

客観的に見ると、私の提案を即座に取り上げ開発を指タの機種が変わるたびに言語を変更する必要があり汎用示したＴ氏、そして基本ソフトとして開発を決断したＨ

性に欠ける。当時でも汎用言語としてのＣ言語はあった氏の方が貢献が大きかったかもしれないが、いずれにしが、TOSBAC‑40のように制御用目的では、メモリ効率ても実際に金の動かないヴァーチャルな話であるからまや実行速度が悪すぎ、とても使い物にはならなかった。

あいいとしたい。最近では、青色発光ダイオードの発明

コンピュータの性能が上がり汎用性のあるＣ言語に移行者のように、企業の研究者や技術者が自分の貢献に見するまでの10年ほどは、殆どのアプリケーションで使わ合った金額を主張して裁判で争う事例が多くなってきてれるようになっていた。

いる。私もやったろかなんてことは夢にも思わない。アホかと馬鹿にされるだけであるから。しかし、運がよかっ９‑９

たといえ、そしてそれがヴァーチャルな金額であるにせ普及活動

良い言語を提供すれば現場はすぐに喜んで使ってくれ

よ、そのうえ単なる自己満足に過ぎないにしても、少なるかというと、そんな甘くはなく、宣伝・教育活動が必

くとも自分の一生分の給料は稼いだとの自負は持てただ要になる。私のようにヒラレベルではどういうすべもな

け幸せである。いままでの人生で多くの人に世話になっいが、幸い、Ｔ氏が本社の技術管理部に話をつけ、全社

たが、なんと言っても最大の恩人はＴ氏でありＨ氏であレベルで推進をすることになり、その研修会を開くことる。そして、これよりずっと後になるが、私をこの鳥取になった。しかるべき地位の人がプロモートすると物事環境大学に誘っていただいた元副学長の都倉信樹先生は動き出す。講師は私と社外の研修に慣れた教育のプロ（現大阪電通大学学長）との３人にはいまだに足を向けＦ氏の２人で、教材はもちろん自分で作成した。全部でて寝たことがない（？）。

20回くらい社内の各部門で講習を行った。その後も、Ｆ氏が何年か講習を続けていた。そういう努力も実り、普11．調子に乗ってミニコンで成功したので、調子に乗って上下の方向で及するようになった。

―6―

大筆

ソフトウェアとの付き合い

売り込みを始めた。上方とは汎用機 TOSBAC‑5600であ流行したのは要求定義、設計、プログラミングやテスト

り、アプリケーションは FORTRAN などの汎用言語でといったソフトウェア開発ライフサイクルのすべてを、書かれていたが、OS やコンパイラ、データベースなど

特に上流工程をツールの支援で開発しようとするもので基本ソフトを開発するためのシステム記述言語は相変わある。私の所属していた東芝システム・ソフトウェア研

らずアセンブラが中心であった。Ada 言語を記述言語

究所（以下（Ｓ研）と略）では IMAP（Integrated soft-にしようという動きが NTT を中心にあったが旨く行か

ware MAnagement and Production support system）

なかった。汎用機を開発している青梅工場にのこのことと銘打って、ソフトウェア開発のライフサイクルだけで出かけて行き、基本ソフトの部長に PL/40と同じようななく、進捗管理、品質管理など開発管理全般にまで支援

記述言語を作りませんかと持ちかけた。何度か説得してするツール群の開発を行ったが、結局一部のツールを除いると検討してみるということになり、担当の技術者もいて殆ど使われることがなく終わってしまった。私はこ

決まり、技術的な打ち合わせを始めた。何度か打ち合わの仕事の No. ２として戦犯の追及を受ける立場にあった。

せているとき、突然、東芝は大型機からは撤退し NEC

CASE 開発のブームはコンピュータ関連企業の各社と共同開発する（建前はそうでも実質は NEC に引き取

（Ｎ、Ｈ、Ｆ、Ｉ）でも行われていたし、国家プロジェ

られる）事になった。もちろん記述言語の話は没になっクトとしてもΣ計画が1985年から始まり250億円の巨費た。その何年か後、東芝の大型機の残党技術者がオフコをかけながら殆ど役に立たないまま終わっている。日本

ン的な DP（Distributed Processor：分散処理プロセッだけでなく欧米でも日本のブームに釣られてか CASEサ）というコンピュータ開発したとき、PL/40もどきの開発がブームになっていた。欧州では、英、独、仏、伊

システム記述言語を作っていた。私とは直接関係がなくなどを巻き込んだ esprit プロジェクトと言っていたが何の挨拶もなかったが、間接的な貢献はあったと思いた

いつのまにか消えてしまった。

い。
下方とはマイクロコンピュータのことで、当時は組込12‑２技術者の能力を上げることこそ本筋

み用のマイコンとして TLCS‑4という４ビットマイコン

プロの料理人は良く切れる刺身包丁で美味しい刺身をがあり、計測機器などに使われていた。計測機器事業部造る。では、アマが同じ包丁を使えばプロと同様の刺身と半導体事業部に売り込みをかけ、同じような言語ができるか？もちろんできるわけがない。CASE ブーム

PL/4を開発した。私は言語仕様を決め方式設計までをの根幹には、いいツールさえ作ればソフトウェアの生産

やり、プログラミングは外部の業者に頼み開発が完了す性や品質が向上するはずであるという、共同幻想を抱いると私の手から離れてしまった。しかし、あとで聞くと、ていたことがある。ハードの世界では、大型の建築機械

PL/4も TLCS‑4のアプリケーションには結構使われ、や自動化された機械があれば土木建築や製造工場での生

秘めたるベストセラーであったとのことである。

産性は飛躍的に向上する。同様、ソフトウェアを開発するための大規模なツールを開発すれば生産性は大幅に向12．CASE ツールの開発上するに違いないとの願望があった。しかし、ソフトウェ

12‑１

ア開発はほとんどが、技術者による知的生産活動であり日本中が CASE 熱に浮かれていた

私の成功譚は主任クラスまでで、そのあとは、結果とツールがあれば便利かもしれないが、本質的でない補助

して殆ど役に立たないことばかりやっていた。課長から作業を支援するだけで、結局は技術者の能力に依存する。

部 長 に な っ た 頃 は 主 と し て CASE
（Computer Aided「紫式部がワープロを使っておれば、源氏物語級の小説

Software Engineering）の開発に携わっていたが、歳をを幾つも書いたに違いない」という命題は明らかに偽で食い地位が上がるに従い自分自身で設計やプログラミンあろう。

グをすることはなく、部下に任せっきりにしたり、関連のソフトウェア会社に外注することだけが仕事の中心で

12‑３

目くそ鼻くその戦いあった。社外の委員会や学会活動、大学との対応などは

当時、日本のコンピュータ関連の企業では、AI（人工やっていたが自分でプログラムを作らなくなってからは知能）もブームになっており、私のいた（Ｓ研）でも多

充実感がない。

くの研究者が AI に携わっていた。当時の AI とは、今CASE とはソフトウェア開発をコンピュータツール

考えるとエキスパートシステムや、ファジー技術、ニューの支援で行おうというもので、広義に言えば OS も言語

ロ技術でアプリケーションを開発することであり、人間もエディタもすべて CASE である。しかし、その当時の知的活動を人工的に行う AI：人工知能なんて言葉は―7―鳥取環境大学紀要

第９号・第10号合併号

おこがましく詐称もいいところである。たまたまその時新人へのプログラミング教育を担当していたとき、ま点で使えそうになった断片的な技術に、いくつかの応用

たもプログラミングをしたいという欲望に火が付き、いが見つかったレベルにすぎない。

ろんなパズルを解くプログラムを作っては気を紛らわせ

ソフトウェア生産技術の部長になった頃、（Ｓ研）長ていた。そこでは60歳の定年待ちの毎日、定年後には駅が「ソフトウェア生産技術の研究開発にも AI を適用しの自転車置き場のおっちゃんになることを夢見て。転機なさい」と言いがかりを付けてきたので、売り言葉に買が生まれたのは鳥取環境大学に誘われてから。

い言葉「AI のようなチャラチャラしたものに研究者を割けません」と毒づいた。CASE も AI も結局期待した

14．鳥取環境大学での10年間ほど成果を挙げられなかったので五十歩百歩であった

東芝にいるとき、歳を食い地位が上がってくるに従い、が、論文を書くだけだったら AI のほうがカッコよく有

社外の委員会や学会活動など、会社にとっては直接役に利であったようだ。この時の所長との論争が実を結んだ

立たない仕事が増えていた。そんな関係もあり、鳥取環

か、半年後には部長をはずされ、研究主幹という体のい境大学の開学のとき教員に誘われたのだと思う。研究所

い窓際族となりはてた。上に盾突くと得にならないとの勤めは不本意であったが、教えることは好きであるので教訓を得たがもう遅い。

何が幸いするかわからない。おまけに、大学の教授なんて思いもかけない身に余る名誉な職に就けたのだから。
大学での講義課目は、「ソフトウェア設計」、「オブジェ

13．東芝情報システムでの４年間（Ｓ研）長が大学の教授になるので退職したとき、次クト指向設計」、「プロジェクト管理」、「データベース管の所長は誰かなと私を含む部長級４〜５人が顔を見合わ理技術」、「言語と処理系」など自分の専門に近いものだせていた。この中の誰かに決まるのかなと思いながら。

が、幾ら教育を重視する大学はといえ、教えるだけではしかし、（Ｓ研）以外の部門の、部長クラスのわれわれ

面白くなく、といって研究なんかできるわけはなく、何より３歳くらい若い人が（Ｓ研）長として就任した。若か面白いプログラムを作成しようと考えた。

い所長に年寄りの部長たちが仕えるのはお互い精神衛生

ターゲットは前から作りたかった碁のプログラムにしに悪かろうという会社側の厚意により、当然、古い部長

たが、かなり規模が大きくなりそうで、私だけではしん級のお掃除が始まる。事業部に行くもの、大学の教員にどいのと、無料の労働力を確保できる機会ともとらえ、なるもの、関連会社に行くものなどしばらくすると見事卒業研究で私の研究室に配属される学生を巻き込んだプに誰もいなくなった。

ロジェクトにしようと思いついた。

私も関連会社の東芝情報システムに行くことになっ碁を知っている学生が少ないので、まず研究室の本棚た。役員や部門長でなく技術本部長付という名称、要すに碁の漫画「ヒカルの碁」を全23巻揃えた。研究室に来るに窓際から窓際へ移っただけ。窓の外に放り出されな

るチュ―タグループの学生や研究室配属の学生に、まずかったことに幸せを見つけるべきか。

漫画を読ませ、それにより碁に興味を持たせる。興味を事業部門から関連会社に移る時は仕事（お土産）もつ

持ったあと、私が手ほどきをして碁を覚えさせ、囲碁プけて移るが通常であったが、私の場合そんなものもなく

ログラム開発プロジェクトの一員に巻き込もうという水「研究所から何しに来たの、お土産を持ってきたか」とも漏らさない万全の体制である。学生たちは喜んで漫画

丁重なお迎えを受けた。
本社からの移籍人事により社長、を読み、９路盤からはじめる私の碁の手ほどきに付き

総務部長、経理部長など重要部署をすべて占められてし合ったが、１〜２回付き合うだけで、碁のルールも理解

まい、プロパー（新人の時からその会社に入社した人）

しないで逃げ出してしまった。結局、無料で漫画を読まはいつも冷や飯を食われている。腹いせに、私のようなれただけであり、食い逃げされたようなもの。人生とは地位がなくいじめても反動のない立場のものが不満のは

辛いもの、またまた夢が潰える。
碁のプロジェクトはあきらめ、個人的には毎年のようけ口になる。
東芝情報システムでの４年間で仕事らしい仕事をしたに、オセロのプログラムやパズルのプログラム、あるいのは2000年問題の責任者となったときぐらい。あとは、はπの新しい計算公式を発見するためのプログラムなど

給料をもらうために毎日出社はしていたがほとんど役にを作って欲求不満を紛らわせていた。情報処理学会のたつ仕事をしたという実感がない。ヴァーチャルには一

ゲーム情報処理研究会で発表するなど年甲斐にない活動

生分の給料を稼いだはずだが、リアルには毎月の給料がもしていた。
学生の研究室への配属は３年からで、碁のことはあき必要であるから。

―8―

大筆

ソフトウェアとの付き合い

らめ、配属された学生には、毎年「何か面白いプログラ

学生に学位記を授与したあと、「大筆豊」の呼び出しム、たとえばゲームのプログラムを作りなさい。２年間があり、学科長から「所定の講義を行い卒業研究の指導で１万ステップ以上のプログラムを作り、卒業論文は50を行った」として卒業証書を授与された。この文章は、ページ以上書くこと」と指示した。小難しいご託宣はい

はじめの予定よりだらだらと大幅に長くなっておりとていから、まずプログラミングを好きになり、プログラミも卒業論文といえない。

ングに浸りきれば、自分なりの流儀を編み出してくれる

東芝で28年、東芝情報システムで４年、そして鳥取環はずであるとの確信からである。この10年間、研究室の境大学でちょうど10年、都合42年の勤務期間を通じて、学生の殆どは、オセロ、将棋、シューティングゲーム、

ソフトウェア開発と関係してきた。研究であるかどうか

RPG、神経衰弱など種々雑多なゲームやパズルのプログは別にして、自らソフトウェアを開発し、その経験を通ラムを作って卒業していった。内容はともあれ、学生時

じて自分なりの工夫はしてきた。自分の好きなことを続代に１万ステップのプログラムを作りましたというと、けられたことは幸せである。

企業では、「ムム、なかなかやるなと」評価されるとと鳥取環境大学を卒業した後、またもや、役にも立たな

もに、就職にも有利ではないかと思ったからである。結いプログラム作りに勤しむか、あるいはほかの道を見つ

果的には私の与えたノルマに達した学生は数人しかいなけるか。プログラムを作るのは相当気力が必要で、もうかったが。

無理であるかもしれない。
（2011年７月29日）

15．おわりに
平成22年度、退職する私にとって最後の学位授与式で、―9―