X



【コボル】COBOL不要論【ただのDSLだよね?】
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
垢版 |
2011/09/20(火) 00:06:43.84
COBOLでCOBOL書ける?
0209デフォルトの名無しさん
垢版 |
2012/02/24(金) 01:33:19.11
スーパーでも24時間営業の店とかあってNCRのノンストップ・コンピュータ(HP社に吸収されたタンデム社のOEM品?)を使ってるよね
0210デフォルトの名無しさん
垢版 |
2012/02/24(金) 01:47:14.48
>>204
いや、そういうんじゃなくて小数点7桁の数値を単純に数百万回加算しても誤差が出ないという話では?
初期のパソコンによく使われたZ-80とBasicの組合せでは0.001を単純に1000回足しても1に為らずに0.997とか0.999になってしまうものだった
0211210
垢版 |
2012/02/24(金) 05:16:39.68
確かi386とBasicの組合せ(OSはMS-DOS)でも出たような記憶があるんだよなあ
勿論1000回ぐらいじゃ出ないんだけど・・・
0212デフォルトの名無しさん
垢版 |
2012/02/24(金) 07:54:27.71
今、Excel2000のマクロで0.0001をFor〜Next文で一万回足したら…orz
0213デフォルトの名無しさん
垢版 |
2012/02/24(金) 21:28:24.87
>>210>>212
0.1 を 1 万回足してもなかなか 1,000 ちょうどにはなってくれない場合がある。
コンピュータが 2 進数で動いていることの証拠なのだが、金融の世界ではかなり困ったことになる。

2進演算では、小数点以下の丸め誤差が発生してしまうためだ。

金融業界は怖いぞ〜、この業界では超巨大な銭を扱っていて、
さまざまな金融商品を数十兆円単位で取引しているが・・・
0.1%の誤差があるだけであっという間に数百億円単位の損害を叩き出す大惨事になるというとんでもない世界
だから金融業界ではBCD演算が必須

COBOLは言語の仕様でBCD演算をサポートしているから銭の勘定では他の追随を許さない安定性がある。
他の言語でもできないというワケではないが、初めからついてる奴と、後付けの差は大きい。
要するに「そろばんや電卓での処理」をそのままプログラムに落とし込めるから金融系では確実に使える

蛇足だが、MSX(大昔の8ビットパソコン)にもBCD演算機能が存在する
0219デフォルトの名無しさん
垢版 |
2012/02/25(土) 06:22:16.80
何か勘違いな部分もあるようなんで…
COBOLは言語の仕様で固定小数点演算(Binaryだと浮動小数点演算より高速だが有効桁が小さい)
扱える形式
Binary
BCD(pacdデシマル)
ゾーンデシマル(文字型数字)
何れでも小数点ありの変数として計算可
0220デフォルトの名無しさん
垢版 |
2012/02/25(土) 06:22:41.72
何か勘違いな部分もあるんで
COBOLは言語の仕様で固定小数点演算(Binaryだと浮動小数点演算より高速だが有効桁が小さい)
扱える形式
Binary
BCD(pacdデシマル)
ゾーンデシマル(文字型数字)
何れでも小数点ありの変数として計算可
0221デフォルトの名無しさん
垢版 |
2012/02/25(土) 06:32:19.92
ありゃ、二度書きしちまった^ ^;
小数点の位置を固定するので、ある意味integerとして計算できる
0223デフォルトの名無しさん
垢版 |
2012/02/25(土) 08:36:18.74
先ほども云ったようにコンパイル時に計算対象の変数、数値を解析して小数点位置を決めうちし計算するのでBinaryであっても0.1を1万回加算しても誤差がでる事がない

PL/I、俺自身は使った事無いけど使われなくなってしまったのは惜しいと思う。IBM、パソコン用にだしてくれないかなあ(格安で…)今出たらCOBOLもJavaが殆ど消え去りそうな気もするけど
0224デフォルトの名無しさん
垢版 |
2012/02/25(土) 12:34:10.68
システム構築、工程品質管理、その後の保守をする立場でいえば、COBOLは色々な面で有難いし、不要とは思わない

比較的まとまった規模の案件であれば、他言語併用でCOBOLはいまだに現役だし、これからも事務処理系や大量のデータを取り扱う分野で生き残ると思う
新規案件が減っている感じもしない

ちなみに、レベルの低いJava書きを排除するために、Java案件でも、人員資格にCOBOL必須と入れている

プログラマーにとっては、面白みはないが、毛嫌るす言語では無いと思うのが、個人的な意見
異論は認める
0225デフォルトの名無しさん
垢版 |
2012/02/25(土) 15:42:57.39
20年以上前にCOBOLを使っていて不満だった事
・ローカル変数が使えない(全てDATA DivisionのWORKING…で定義)
・構造体の拡張が出来ない・テーブルの動的拡張が出来ない

これくらいかな?
後はPL/Iの総称名が使えればなあとオンライン処理の時に思ったくらいかな
0226デフォルトの名無しさん
垢版 |
2012/02/25(土) 20:45:01.32
最後の部分は機種依存による制約にしか過ぎないのかな?
SDLC、HDLC等プロトコル手順毎にメーカー提供のサブルーチン名が異なっておりリンク時に静的結合しかできなかったんでため息をこぼすしかなかった
0227デフォルトの名無しさん
垢版 |
2012/02/25(土) 21:05:01.47
COBOL の区粗なところ
大量のデータをライブに扱えない
1 日 n00GiB から nTiB 増えるデータは扱えない
0228デフォルトの名無しさん
垢版 |
2012/02/25(土) 23:41:52.56
>>224
金融業界や保険業界だと、Web製作すらCOBOL採用する暴挙をやらかすからなあ。
0230デフォルトの名無しさん
垢版 |
2012/02/26(日) 13:00:03.48
>>227
あまり問題無い気もするが、>>227の想定ってどんな状況なんだろうか?

まあ、どうしても無理なら、必要な所はC++とか、Javaで書けばいいだけじゃねぇ?
0231デフォルトの名無しさん
垢版 |
2012/02/26(日) 13:17:25.29
>>228
GUIがJavaで、裏はCOBOLってやつかな?
それならお互いの特性を使い合えるから、程度にもよるが、有りだと思う

ALL COBOLなら、ある意味、COBOLに掛ける情熱に尊敬する
0235デフォルトの名無しさん
垢版 |
2012/02/26(日) 15:57:56.57
>>227 論理的な区切りが出来ないイメージデータ?

機種依存の部分でレコード長が32KB制限あるのはきつかったなあ(WORKING内の各テーブル等…)
リアルタイム集計やCAFISみたいにアプリレベルに近い部分で非同期処理があると、もうね…
0238デフォルトの名無しさん
垢版 |
2012/02/26(日) 19:39:19.07
誰か不定長レコード(可変長じゃなくて)のファイル扱ったことある人いる?
俺あれだけは何に使うのか解らんかった(^ ^;
0239デフォルトの名無しさん
垢版 |
2012/02/27(月) 23:17:50.82
>>223
PL/IはIBMのメインフレームで使用されている言語だね。
COBOLとFORTRANとALGOLから当時としてはいいとこどりをして作られたが
マシンリソースを大量に必要となるため、IBMのメインフレーム以外では普及はしなかった
日本では三菱東京UFJ銀行、みずほ信託銀行など多数が使っている。
>>231
キャッシュカードやクレジットカードのポイント設定とか与信管理などをするWebサイトだったら
モロに勘定系システムだからCOBOLで動いていてもおかしくない

どうやら安田火災海上保険(現:損保ジャパン)は、自動車保険のインターネット見積りサイトは保険料の見積もりをする部分がCOBOLで動いているらしい。
↓がCOBOLで動くWebサイト(実は、コレはCOBOLで動く!!)
http://www.sompo-japan.co.jp/kinsurance/automobile/onestep/index.html
0240デフォルトの名無しさん
垢版 |
2012/02/28(火) 07:21:14.06
>>236
今のCOBOLは可変長出力ができるし、他の言語と
特別差はない。ポストスクリプトファイル出力なんか
だってするし。
0242デフォルトの名無しさん
垢版 |
2012/02/28(火) 09:48:35.35
Webというかhtmlファイルの大枠はCOBOLで書いて、
複雑な処理は別マシンでCOBOLがバッチ出力したファイルを
Prologで読み取らせて処理させ、JSファイルに出力させて置く、
というのは見たことがある。
問い合わせにリアルタイムでというのは無理そうだった。
0243デフォルトの名無しさん
垢版 |
2012/02/28(火) 20:49:25.84
>>242
バックエンドのバッチ部分はCOBOLで・・というのはわかるけど、htmlの出力部分をわざわざCOBOLで組む理由がわからん。
0244デフォルトの名無しさん
垢版 |
2012/02/28(火) 22:52:52.52
なんかコボルのシステムってエリアの領域が足りなくなって
計算おかしくなったりするのおおいイメージだったんだけど!
たとえば簡単にいうと、エリアに3文字しか入らないのに、
1200+300を計算すると、500になるとか。そういうバグ大杉。
まあ僕じゃなくてコボル40年のジジイが作ったやつだけどね!!
0245デフォルトの名無しさん
垢版 |
2012/02/28(火) 23:01:39.89
>>244
そりゃ桁あふれすれゃ不正な数値になるのは当たり前だろ・・。int型の変数に32768以上の数値をぶち込むのと同じ事
0250デフォルトの名無しさん
垢版 |
2012/02/29(水) 01:57:02.09
COBOLの場合、BCDだから演算とformattingが一体化してるんだっけ?
だとすると、
"1"500 (3桁) <- 1200(4桁) + 300(3桁)
という演算をやっているので、コンパイル時にわーにんぐが出てもよさそう
なものだいが。
0251249
垢版 |
2012/02/29(水) 02:14:59.58
>>241
機種によって違うのか
俺の使っていたマシンは固定長だったな
ソースライブラリは可変長(ヘッダー部にLength付きで扱い方はデルファイと同じ?)だったし
プリントファイルが不定長なんだろうけど入力側として使ったことがない
銀行の勘定系だと全銀オンラインがプリントイメージなので有るんだろうけど

>>249
ADD、SUBSTRACT、MULTI…、DIVIDには確かあったはず(ON SIZE ERRORの構文の後に命令)最もよほどの事が無い限り省略していたなあ
COMPUTE命令、MOVE(項目転送)命令にはないねえ
0252デフォルトの名無しさん
垢版 |
2012/02/29(水) 02:25:13.40
>>250
BCD、文字型数字で計算できるといってもコンパイル時にバイナリーに変換して計算、そしてOUT側の形式再変換したりが普通じゃなかったかな
0253デフォルトの名無しさん
垢版 |
2012/02/29(水) 02:38:23.18
>>243
順序が逆なんじゃないかな。元々COBOLで組まれていて、
対応できないというか、メインフレームでは危険な部分が
生じて例えばUNIXのシステムを追加した。
不整合な部分をJS出力で誤魔化した。
0257デフォルトの名無しさん
垢版 |
2012/03/05(月) 22:59:07.08
Prologって仕事あるの?
何も勉強しないよりかはマシだけど
仕事無くて結局コボラー続けちゃうんじゃないの?
0259デフォルトの名無しさん
垢版 |
2012/03/06(火) 15:06:45.56
私の知る限りの話だが、年配の管理者に、この案件は
関数型言語でやりたいと申し出てもほとんど拒否されるが
Prologでというとすんなり通る。この言語不思議な地位にある。
0262デフォルトの名無しさん
垢版 |
2012/03/06(火) 18:10:47.65
>>260
古くからメインフレームのバックで動いてる環境という意味。
今やAndroidやMacの時代で今更Windowsなんて使わないだろう。
0263デフォルトの名無しさん
垢版 |
2012/03/06(火) 18:24:33.84
>>262
>今やAndroidやMacの時代で今更Windowsなんて使わないだろう。

いいえ、世の中ほとんどがWindowsです。

日本のシェア1月
OSシェア
Windows 7:37.37%
Windows XP:27.51%
Windows Vista:18.71%
MacOS:6.64%
Android:4.00%
iPhone:2.88%
Windows 2000:0.27%
Linux:0.05%
Windows ME:0.09%
0264デフォルトの名無しさん
垢版 |
2012/03/06(火) 18:52:11.23
>>263
だから、現時点では Windows 7:37.37 OSX が多分12-3%
つまり 3 : 1
目を覆うばかりのWindowsの凋落ということだろう。
0271デフォルトの名無しさん
垢版 |
2012/03/07(水) 06:51:28.68
はい、ソース。

Windows上で稼動するメインフレーム
ttp://wsmgr.jp.brothersoft.com/screenshot-50450.html
0275デフォルトの名無しさん
垢版 |
2012/03/07(水) 10:07:13.28
>>274
いや3270のエミュなら昔からあるだろう、そりゃ。
ただ件の彼は残念ながらずっと「『メインフレーム』をWindows上で稼働させるのが普通」
って言っちゃってるんだよ…

「端末はWWWで言うブラウザみたいなものだぞ、お前は2chの鯖がWindowsで動いてると思ってるのか?」
と指摘したら「鯖もWindowsに決まってる」と言いきっちゃったマジメに痛い子
0281デフォルトの名無しさん
垢版 |
2012/03/07(水) 22:30:46.84
>>280
スマホがパソコン出荷を上回り、そのOSの50%以上がAndroid。
さらに、Macのシェアが世界的には15%に日本でも10%を超える。
Linuxは欧州の都市の公的コンピュータを席巻して、UNIXの
サーバーとしてのシェアも一定水準を確保。以上のことから
言えることは、UNIX系OSの大反撃が起きているということ。
0282デフォルトの名無しさん
垢版 |
2012/03/18(日) 22:29:17.98
コボラーに未来は無いと言われ続けて20年
どっこい生きてる基幹システムの中

保守要員としてならあと20年は戦える
0284デフォルトの名無しさん
垢版 |
2012/03/18(日) 23:33:41.03
>>283
基幹システムが壊れるってどういう意味だ?

まさか基幹システムがPCやサーバーみたいな固有のH/Wだと思っているのか・・・
0286デフォルトの名無しさん
垢版 |
2012/03/19(月) 06:18:31.73
COBOLが優秀というよりCOBOL以外の言語が走るプラットフォーム、
特にWindowsが脆弱過ぎて基幹システムの運用に耐えられないだけなんだけどね。
0287デフォルトの名無しさん
垢版 |
2012/03/20(火) 01:09:53.29
>>283
そうだね。基幹システムで不具合が出たら、あっという間に億単位の損害wwww
0288デフォルトの名無しさん
垢版 |
2012/03/20(火) 14:02:10.33
基幹システムがCOBOL以外のモノに移る可能性は常にある。
50代の技術者が定年までしがみつくには最適かもしれないが
2,30代の技術者が食ってくにはキツイ。
0289デフォルトの名無しさん
垢版 |
2012/03/20(火) 15:09:09.41
ホストでLinux, java,oracleが動く時代だぜ。
某銀行も保守はともかく新規でCOBOLを採用することはないと断言してるし。
0291デフォルトの名無しさん
垢版 |
2012/03/20(火) 17:09:26.77
分散処理が出来るようになったからね
データベースだと、どこで管理するとかになってくるんじゃねえの
クラウドっていうのもその流れの一つでしょ
0292デフォルトの名無しさん
垢版 |
2012/03/20(火) 17:52:43.11
ホスト上でDB管理することで高い信頼性を維持してるのに
わざわざ信頼性の低いサーバーに分散とか意味わからないとか思ったけど
別システムのデータを直接引っ張ってこれるって意味なら、アリだな。
0293デフォルトの名無しさん
垢版 |
2012/03/20(火) 23:50:06.85
でも今時のPGみたいにパッチワークのようにコピペでしてコードを書く人間にはCOBOLは辛いかもね
0294デフォルトの名無しさん
垢版 |
2012/03/20(火) 23:56:37.24
>>290
現在はホストと言えばWindowsを指すのだが?

東京証券取引所の基幹システムとして稼動するWindows
ttp://itpro.nikkeibp.co.jp/article/NEWS/20090609/331590/?SS=imgview&FD=-654674548

HPCでもダントツのパフォーマンスをたたき出すWindows
ttp://cloud.watch.impress.co.jp/docs/interview/20101224_416025.html

Windows上で稼動するメインフレーム
ttp://wsmgr.jp.brothersoft.com/screenshot-50450.html

Linuxより57倍速いWindows!!
http://www.elecom.co.jp/business/pickup/nas/201102/index.html


一方Linuxは…
Linux Daily Topics:2011年9月2日 Kernel.orgがトロイの木馬の侵入被害に|gihyo.jp … 技術評論社
http://gihyo.jp/admin/clip/01/linux_dt/201109/02

Linux カーネルの基盤サイトがクラッキングの被害に - japan.internet.com
http://japan.internet.com/webtech/20110902/2.html

Linux Daily Topics:2011年9月15日 狙われるLinux… 今度はLinux Foundationが標的に|gihyo.jp … 技術評論社
http://gihyo.jp/admin/clip/01/linux_dt/201109/15

【経済】 東証でシステム障害 241銘柄の売買一時停止
http://uni.2ch.net/test/read.cgi/newsplus/1328146640/l50
0297デフォルトの名無しさん
垢版 |
2012/03/21(水) 06:25:02.86
>>294はLinuxスレで暴れているアンチだよ。通称ダダダ。
たしか勤め先のサーバーがWindowsから全てLinuxに置き換えられて
Linuxについていけない>>294はリストラされたとか。

故にLinuxが憎くて憎くてしょうがないらしい・・・
0298デフォルトの名無しさん
垢版 |
2012/03/23(金) 21:02:39.76
コボラーってもしかして昔ながらのホストマシン(笑)が未だに稼動していると信じているんだw

Windows全盛の今の時代でメインフレームすらWindowsで稼動している現代でまさにオカルト的な発想だわw
0300デフォルトの名無しさん
垢版 |
2012/03/24(土) 08:43:04.54
>>299
確かにw
コボラーは技術が20年以上遅れているからどんどんリストラされている。
0302デフォルトの名無しさん
垢版 |
2012/03/25(日) 15:14:24.22
ダ「メインフレームは現在Windows上で動いている、証拠の画像だ」
住民「いやそれ、ただの端末だから…」
ダ「端末がWindowsならメインフレームもWindowsだろう」
住民「えーとな、メインフレームはWebサーバ、端末はブラウザみたいなもんなんだよ、例えば2chはWindowsから見れるだろう?」
ダ「2chの鯖もWindowsだろう?」
住民「いやBSDだが」
ダ「違う、Windows鯖だから見れるんだ」
住民(駄目だコイツ)
0303デフォルトの名無しさん
垢版 |
2012/03/26(月) 13:43:45.54
アンドロイド端末からPCを操作出来る→PCのOSはアンドロイドだ間違いない(キリッ)
こうですか(笑)
0304デフォルトの名無しさん
垢版 |
2012/03/27(火) 23:38:53.49
COBOL資産の他言語移行が進まないのは、
銀行や証券・生保など金融機関の勘定系システムで多く利用されているため
スケジュールと人員面で移行が困難なせいもあると思います。

特に金利計算なんかは100%ブラックボックスと化していて下手にいじると収集がつかなくなったりして。

「今でもCOBOLで問題なく動いているものを、
危険なリスクを背負ってまで他言語へ移行する理由もない」

・・・と経営層は判断するでしょうし。


バッチ処理に強いとか言われるけど、日本語環境ではいまだに全角/半角文字の混在処理が苦手だったり、
GOTO文使いまくって簡単にスパゲッティコードになったりするのはいい加減勘弁して欲しいです。

でもまだ当分現役なんだろうな・・・

例えば住宅ローンの場合は最長35年あるわけで、1970〜1980年代のシステムがそっくりそのまま残っていて
そのままCOBOLで運用されてても不思議ではないです。ただ、今後積極的に使われることは少なくなってくるでしょう。
0305デフォルトの名無しさん
垢版 |
2012/03/28(水) 02:33:04.04
過去10年分のデータ食わして同じ結果になりました、みたいなテストができりゃ良いんだけどねえ
無理ゲーすぐる
0306デフォルトの名無しさん
垢版 |
2012/03/28(水) 06:18:31.54
未だにCOBOLが使われているのは他の言語やプラットフォームについていけない老害ばかりだからだろ。

VBとSQLで何百倍も低コストで何千倍も早いシステムが構築できる・・・。
COBOLが得意というバッチ処理でもCOBOLで何時間もかかる処理がSQLだと数秒で処理でる。
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況