柏崎「もしこの世からPadが無くなったとしても、たぶん自分でPadをつくっちゃう(笑)。」
   
柏崎「IPはソフトウェア・アーキテクチャの最良の型。いわば、"SE養成ギプス"ですね。」
 



吉田:柏崎さんはPadは最良のシステムアーキテクチャといいきってたね。「モジュール化しないと全体をつくれない」という強制事項があるからこそ、全体構造が自ずと決まってくるんですね。
川原:「この仕組みそのものが、座学などで本を読むよりもずっと体に染み込んでくる」とも言ってました。どんなものにも、ふさわしい「型」があるように、柏崎さんはソフトをつくるひとつの「型」として、IPをとらえているようですね。
吉田:Padが持っているモジュラリティという規制にのっとる。これは不便な規則というよりも、逆にプログラミングにとっていい道筋をつくってくれる最高の鉄則、ということかな。 それが柏崎さんのIPは「SE養成ギブス」という言葉なんだ。




川原:気になった言葉があったのですが、それは「独立した部品」と「全体を知る部品」です。Padが独立した部品ということは分かるけれども、部品によっては全体を司るものがあるっていうことなのかな?
吉田: そこがIPの難しいところだね。本来、IPにおける部品は、自分の機能しているところだけを知っていればよい。逆に全体を知っている部分があるとすれば、そのプログラムを再利用するにあたってはマイナスになる。
川原: 全体性を意識した部品は、他のシステムに転用するときに応用性に欠けますよね。そうすると、全体を知っているモジュールをいかに少なくするか、というのが課題になるのかしら?
吉田:全部のモジュールが独立したものだと、プログラムをつくる上で不便なところも出てきてしまうでしょう。だから、中には全体を知っている部品が必要になってくるんだね。
川原: そのバランスを保つのが、IPの難しい所ということなのかぁ。
吉田: ただ、柏崎さんの言う「ジェネリックな(=本質的・何にでも使える)Pad」というのは、単純に「全体を知らない部品」とは言い切れない。「つきつめて考えると、『全体は全て要素に落ちる』ということ。」とも言ってたけど、つまり部分あるいは部品としてのPadは全体の要素であり、本質的なものだということかな。
川原:なんだかプログラミングの話が哲学のようになってきましたね。
 
柏崎「ジェネリックな型を用いて、いかに全体を分解してゆくかが、私の仕事の肝ですね。」