COBOLなら、オレに聞け! <1>
■ このスレッドは過去ログ倉庫に格納されています
0844ほういち
NGNGCOBOLの技術者に聞いたのは具体的には
「Cだとナルで埋まるのですがCOBOLではスペースで埋まってますが、
これは普通そうなるのですか?」という内容です。
いただいたお返事が、
「スペースで埋まっている?イマイチ意味がわからないのですが、、」
という感じで使わなかった部分に何らかのデータがあるという概念が無いような
感じで10バイトの所に4バイトしか書かなかったらともかく4バイトだと。
その領域を読み出して表示したら元の4バイト分しか表示されないと、
そういうような事を言われました。
半角スペースをわざと書いたらどうなるのか?という疑問が
残ったのですが、それで行けるというので、
「Cなら変数は先頭アドレスだけを保持していて、そこに何を書いたかは
知らないけれども、COBOLは先頭アドレス+そこに何を何バイト書いたか
まで保持しているのだろうか」と勝手に結論付けました。
何故、ナル値を入れて下さいと言わなかったのかとか、トリミングを嫌うのかと
いうのは、かつて自分が関わった事のないような大きな案件だからなのです。
つまり、自分は単に仕様書が与えられてその通りの動作をするコードを
書く事が求められているからなのです。
仕様書に「引数で与えられた2つの文字列を連結して、それをファイルに出力する。
その文字列の領域は各10バイトである」と書かれてると、
果たしてスペースをどう解釈したらいいのかと。
勝手にトリミングすると仕様書からもずれる事になりますので。
もう一つの問題は、COBOLの方は技術者が多数いて、大量のコードを
書いてるので膨大な本数を修正する必要がおこる事です。
もしナルを入れてもらうのならまず、仕様書を全て変更してもらって、
さらにコードを変更するという手順になります。
勝手にお願いする訳にもいきませんから。
■ このスレッドは過去ログ倉庫に格納されています