LoginSignup
26
17

はじめに

Qiitaで組立語(assembler)・機械語(machine language)・CPU「アセンブラへの道」
https://qiita.com/kaizen_nagoya/items/46f2333c2647b0e692b2

のはてなブックマークの意見で「COBOL版求む。」というご意見をいただいた。

アセンブラ、BASIC, COBOL, FORTRANの順に覚え、仕事で使って来た。

PL/1からの移行で、COBOLにするか、JAVAにするか、C#にするかという選択の相談をいただくことがある。

4つの言語を比較できるような資料を心がけたい。

どうせなら、dockerに構築するとよいかもとCOBOLから着手。

COBOLを40年ぶりにうごかしてみた:dockerでcobol

COBOL

アセンブラとともに、オブジェクト指向言語の代表格。

出力を想定した命名規則と変数定義により、帳票出力に適した言語。

COBOLをJAVAに書き直す案件の相談はいくつか受けたことがある。

ハードウェアの置き換え(replace)を伴わない場合には、意味がないことを確認。
ハードウェアが1000万円以上で、それが半額以下になるものに置き換える際に、該当する機器に可搬性の高いCOBOLがない場合には候補にしてもよいだろう。

つまり、移植に500万円くらい投入できるのであれば、COBOLからJAVAへの移行は無駄にならないかもしれない。

2010年頃ならC#を勧めていたと思う。自分のまわりに、急速にC#の使い手が現れ、C#ってそんなに便利だったのって思った。Visual Basicのよいところと、JAVAのよいところを併せ持ち、Visual Basicの悪いところと、JAVAの悪いところを緩和したような感じっていう。(個人の感想です)

PL/1の置き換えの場合には、いきなりJAVAに移行するより、一先ず、同じ機種のCOBOLに以降し、小規模の機種のCOBOLへ再変換することを提案したことあり。
最初にCOBOLに移行する際に、小規模機種のCOBOLと同等機能だけを利用することが鍵。

この本文を最初に書いた時、

最近では、C#で短くかけるらしい。 COBOLとC#の比較は急務。

と書いてしまった。個人的にはCOBOLでもC#でもどっちでもいいと思う。 

Cobol on Qiita

そういえば弊社もCOBOL保守してるけど全然触ったこと無いなという人向け、COBOLを完全理解できる記事
https://qiita.com/e99h2121/items/47857957fd549c83b5cb

ふとCOBOL入門してみたいなと思った人向けCOBOL入門
https://qiita.com/FPC_COMMUNITY/items/4e4fbbdb70e6b79b5729

【COBOL】初めての人でも簡単に開発環境(OpenCOBOL)を構築し、Hello Worldのプログラムを作成・実行出来るようにするまで
https://qiita.com/yut-nagase/items/bd76b6424d7d0b23221f

COBOLで湯婆婆を実装してみる~2バイト文字判定の仕方~
https://qiita.com/Keita_INAGAKI/items/6bb0551a483379a94229

COBOLで湯婆婆を…
https://qiita.com/Mosaku_Anchu/items/544b36a5d0caf69f1c8b

COBOLで「Hello World」
https://qiita.com/userisgod/items/06114912264671a523fc

COBOLでHello worldを表示する
https://qiita.com/YasuOza/items/dca343695c647c98123c

COBOLを触ってみる
https://qiita.com/CyberMergina/items/4586364201867966cc2e

PostgreSQLから複数行を取得するCOBOLプログラムの例
https://qiita.com/fujii_masao/items/b6c341add8161dee9194

Windows環境におけるopensourceCOBOL環境構築手順
https://qiita.com/Fujiwara775/items/b986d5908445a480a7ee

OpenCOBOLをUbuntu16.02TLSにインストールしてみた
https://qiita.com/walukure_k2/items/c4c6fe5cd943c56d6b50

COBOLでウェッブアプリケーションを書くhttps://qiita.com/horimislime/items/f9faac73b6ccc8f47094

COBOLでGUIプログラミングもどき
https://qiita.com/nRioki/items/37f669d91ab7a2e326ab

COBOLの私見
https://qiita.com/masapiko/items/2388ea7e25dbd9227989

COBOLの構成について
https://qiita.com/masapiko/items/188dd347b7def30d0a74

COBOLの基本(コーディング制約)
https://qiita.com/walukure_k2/items/7dd2ec3aa01e99477447

ズンドコキヨシ with COBOL
https://qiita.com/Yaggytter/items/397df7a85dde0ef4ae17

COBOLでFizzBuzz
https://qiita.com/saba1024/items/8b54b0348da6bdee5ca9

COBOL VS PHP
https://qiita.com/aoi_coro_/items/2c764cf27ca51fd3a147

小数点を扱うならBCDを採用している言語が圧倒的
https://qiita.com/ma2shita/items/d8aeec9e2921dc3536f4

COBOL とその言語処理系の今昔比較
https://qiita.com/hanotch/items/c591d66245c25db682fb

COBOL初めて見たレベルからCOBOLの静的解析ツールを作った話
https://qiita.com/koob/items/3e7c8d2dc31495a2b092

WinMergeプラグイン(COBOL行頭番号無視)
https://qiita.com/tak458/items/bac4c1775be980060672

COBOLで彼女をつくりたかった
https://qiita.com/nRioki/items/85871aeb2aad5586d9b0

1人COBOL再研修〜基礎編〜
https://qiita.com/zama_8722/items/65935680e157de2c7927

AWS

[JAWS-UG CLI] AWS Batch #3 より実践的な使い方<COBOL使用>
https://qiita.com/pottava/items/a1d316e5a622b705efba

COBOLをとにかく動かしたい(AWS、opensourceCOBOL)
https://qiita.com/kazu-ojisan/items/f8b94e643b1e4cf43271

COBOLをAWS上のマイクロサービスとして使ってみる
https://qiita.com/nor51010/items/dfef285e1dcf41cf27e9

GnuCOBOL

Gnu-COBOL 四則演算
https://qiita.com/sogu/items/e021b1322a3af39d76d1

GnuCOBOLでHTML出力
https://qiita.com/tukiyo3/items/50f1ffa23e7dbc69c9e6

macOS

Mac 上の opensource COBOL で Hello World!!
https://qiita.com/fujii_masao/items/ce57288ba8dd18859fbf

mac OS HighSierraでのCOBOL環境構築
https://qiita.com/oshuya/items/9d6926f563160f59a564

Mac(OS:El Capitan)でのCOBOL開発環境構築
https://qiita.com/xxxamxxx/items/34247c250ba73d2929de

MacにCobolを入れていじってみた話
https://qiita.com/yhinoz/items/125ff9809f74f5890a33

macOS CatalinaでVSCode使ってCOBOL環境整備
https://qiita.com/imaicom/items/fcb637138b477e2bd819

Mac上でCOBOLからPostgreSQLにアクセス
https://qiita.com/fujii_masao/items/817af1c5947f2bfdf06e

COBOLの開発環境を快適にしよう @nonbiri15

COBOLの開発環境を快適にしよう 1 - バージョン管理と課題管理の改善 -
https://qiita.com/nonbiri15/items/2fcca2f329d5c9393b27

COBOLの開発環境を快適にしよう 2 - シンタックスハイライトをしてくれるエディタ -
https://qiita.com/nonbiri15/items/d6716f5cea30f2708bc2

COBOLの開発環境を快適にしよう 3 - 補助作業の自動化の勧め-
https://qiita.com/nonbiri15/items/76832a932b8d82f5f3a3

AtCoder ABC : COBOL で解いてみた @ShinjiSHIBATA

AtCoder ABC 過去問 を COBOL で解いてみた
https://qiita.com/ShinjiSHIBATA/items/1ef8cbf4b87969a46015

AtCoder ABC ソート を COBOL で解いてみた
https://qiita.com/ShinjiSHIBATA/items/ea1fb8b3e98c752f3dac

AtCoder ABC 入力大き目 を COBOL で解いてみた
https://qiita.com/ShinjiSHIBATA/items/af3c9a6a8dd26233dc7e

AtCoder ABC ビット演算 を COBOL で解いてみた
https://qiita.com/ShinjiSHIBATA/items/a668b1c9ecebde58287d

COBOLでチェックインタープリタ @madilloar

スタックを実装するには?:COBOLでチェックインタープリタ
https://qiita.com/madilloar/items/5adab1a477edccd0c505

COBOLで作るチェックインタプリタ用の仮想マシンコード、そして定数と変数:COBOLでインタープリタ
https://qiita.com/madilloar/items/8a82b56ad8a03e0e3a2f

変数をどのように扱うか?:COBOLでチェックインタープリタ
https://qiita.com/madilloar/items/a3b3572048e09badd67c

COBOLでインタープリタ的なものを作るには?
https://qiita.com/madilloar/items/153080ffea4d4c72963b

<上記記事へのコメント:
30年ほど前、COBOLで作成されたCASL(またはCAP-X)のアセンブラ(のシミュレータ)をPC-VANのACOSクラブ(当時サブシス)等で配布させていただいたことがあります。共用体のような感じで処理していたような記憶です。何か思い出したらご報告いたします。 参考:http://software.fujitsu.com/jp/manual/manualfiles/M050008/B1WN5901/01Z200/apgod07/apgod373.htm

メインフレームOSをCent OS下で動かす(Hello World) : <ソースを見るとCOBOL>
https://qiita.com/madilloar/items/d38c9d4d323b7d4cd5ef

2020年はCOBOL元年なので1時間でHello Worldに挑戦
https://qiita.com/glassmonkey/items/695e0b021cdcb3092b98

私のCOBOL記事を参照くださっている。感謝。

COBOL脳を解説する @egoisangel

COBOL脳を解説する(1)
https://qiita.com/egoisangel/items/c853eea91b12e96b8ed5

COBOL脳を解説する(2)
https://qiita.com/egoisangel/items/99114f0400b2d79ecc4f

言語比較

Groovy なら単純な計算結果がおかしくない。COBOL も(コメント参照)。
https://qiita.com/Nabetani/items/9b3585df4a1cfe232add

COBOL >> Ruby(on Rails) >> Go(revel) >> JavaScript(AngularJS + YEOMAN)
https://qiita.com/masahirok_jp/items/468a5d66e483296855f9

各種言語別 Hello World!出力一覧  (適時更新予定)
https://qiita.com/cororonn/items/6dd60d6cc8529b8094fe

オープンソースCOBOL

MacでCOBOLのプログラムを動かすまで
https://qiita.com/araya/items/f0a26c688cc7f74e5c23

Mac上でCOBOLからPostgreSQLにアクセス
https://qiita.com/fujii_masao/items/817af1c5947f2bfdf06e

Gnu-COBOL インストール
https://qiita.com/sogu/items/6851b222c6ca748424d9

Gnu-COBOL 配列
https://qiita.com/sogu/items/e584e95b7443fd47e168

COBOLを書いてみた~UbuntuとGnuCOBOLによる環境構築からプログラムを実行する~
https://qiita.com/yuichisan65/items/b8e088e5f15aa80fabcf

opensource COBOLをAWS Lambdaで動かしてみた
https://qiita.com/nor51010/items/de720093e284c4f906ac

Windows環境でWSLをつかってopensource COBOLする
https://qiita.com/nor51010/items/f11beed7a9a24bf3035e

opensource COBOLダウンロード
https://www.osscons.jp/osscobol/download/

GnuCOBOL
https://sourceforge.net/projects/open-cobol/

OpenCobolIDE
https://github.com/OpenCobolIDE/OpenCobolIDE

node-cobol
https://github.com/IonicaBizau/node-cobol

Simh/i1401 with COBOL on docker(1)
https://qiita.com/suzanHud/items/032db7575a829e577754

Simh/i1401 with COBOL on docker(2)
https://qiita.com/suzanHud/items/6aba1031e4c95e727618

Windows環境でのCOBOL開発
https://qiita.com/r_iyama/items/ed7ade7475f0628d2c3d

ISO/IEC/JIS COBOL

JIS X 3002-2001
http://kikakurui.com/x3/X3002-2011-01.html

COBOL -- JIS X 3002:2011公示について
https://www.itscj.ipsj.or.jp/hasshin_joho/hj_jis_kozi/cobol_jis_x_30022011_nl89.html

JIS COBOL2011の概要
http://www.cobol.gr.jp/knowledge/technical/base005.html

関連 on Qiita

COBOLerを脱出して、Web業界に行こう
https://qiita.com/ryuchan00/items/f7bf202136940cd96dae

COBOLERにはスキルなんてない、と言われてしまうことについて
https://qiita.com/pro_proletariat/items/f3ed59dc34776976c52a

PythonでCOBOLの転職市場を調べてみた
https://qiita.com/kkdmgs110/items/14dd48a69aed487278dd

金融機関のCOBOLに対抗して、産業(工業系)の制御を書いてみるw
https://qiita.com/Kazu-zamasu/items/cb5366f5ce8ebde5a2de

コボラーがDjangoエンジニアになるまでに読んだ書籍の紹介
https://qiita.com/pro_proletariat/items/b385a042d0823b73c1a6

下請けCOBOLERから抜けるための技術
https://qiita.com/pro_proletariat/items/61574ed31b5f4fa5041a

自己参照(self reference)

dockerでcobol。

プログラミング言語教育のXYZ

データサイエンティストの気づき!「勉強して仕事に役立てない人。大嫌い!!」『それ自分かも?』ってなった!!!

<この記事は個人の過去の経験に基づく個人の感想です。現在所属する組織、業務とは関係がありません。>

文書履歴(document history)

ver. 0.01 初稿 20190119 朝
ver. 0.02 参考資料追記 20190119 昼
ver. 0.03 階層構造化 20190119 午後
ver. 0.04 JIS COBOL追記 20190120 昼
ver. 0.05 オープンソースCOBOL追記 20190120 夕
ver. 0.06 COBOLを40年ぶりにうごかしてみた:dockerでcobol 追記 20190201
ver. 0.07 URL追記 20210615
ver. 0.08 URL追記 20210819
ver. 0.09 URL等追記 20230224

最後までおよみいただきありがとうございました。

いいね 💚、フォローをお願いします。

Thank you very much for reading to the last sentence.

Please press the like icon 💚 and follow me for your happy life.

このエントリーをはてなブックマークに追加

26
17
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
26
17