パフォーマンスは妥協できない
COBOLのバッチジョブやトランザクション処理システムには、しばしば厳しいスループットとレイテンシーの要件があります。ガベージコレクションの停止やインタープリターのオーバーヘッドを伴う言語への移行は受け入れられないかもしれません。C++は、同じベアメタルのパフォーマンスプロファイルを提供します。
メモリと型のマッピングは複雑
COMP、COMP-3、USAGE DISPLAYフィールドを持つCOBOLのWORKING-STORAGEは、C++の型への正確なマッピングを必要とします。すべてを文字列やdoubleに詰め込む素朴な変換は、金融計算を壊し、未定義動作を招きます。
構造は1対1で変換できない
COBOLのディビジョンベースの構造(IDENTIFICATION、ENVIRONMENT、DATA、PROCEDURE)と段落レベルのPERFORM制御フローには、直接のC++同等物がありません。適切な変換には、COBOLのセマンティクスを理解し、慣用的なC++パターンを生成することが必要です。