Re-writing these systems in another language is almost not an option. They have been written over decades with countless undocumented projects. They are core systems that work the way the business wants (or is built around, for better or worse), and doing a port would take years 100s of millions budgets and have a very high risk of failure.
I've seem smaller/non-core mainframe systems ported and they have been years delayed and plagued with issues, where it is very difficult to specify what is wanted other than something that is the same as the systems that is currently there with all it's weird corner cases.
> “As an example, we knew that the General Ledger capability would most likely not be modernized for a very long time as changes are slow and the module is very stable,” explains Uli Homann, Corporate Vice President in the Cloud + AI Group at Microsoft. “If you were to transpose this situation to modernizing a mainframe application landscape, for applications or functionality that’s unlikely to change, it might mean that you would opt to rehost your existing COBOL, PL/I, or mainframe assembler code using capabilities from partners such as Raincode—and then eventually rewrite those applications piecemeal as COBOL or PL/I programming skills continue to get more scarce and expensive. In the meantime, though, rehosting existing code buys you time and frees-up cashflow to focus on more pressing or important modernization projects.”
https://customers.microsoft.com/en-us/story/1636062794805219...