How are organisations planning to replace dead languages?
In ways that are likely business secrets.
When I was last working for a bank they were facing 3 issues:
- They had hired a new Core system programmer once in the last 20 years an all others were retiring
- The language was more dead than Cobol.
- The core system was on a mainframe, which are incredibly expensive to run, compared to say a cluster of a few dozen commodity machines.
I was now privy to the actual business plan to handle it (so I can't break the aforementioned business secrets).
My team did come up with a plan to solve it, and implemented most of it.
We built a tool which would translate from the aforementioned dead language,
The tool we made generated fairly awful java. Mostly because work around for not having GOTOs, and also for the existence of Reentrant Functions, and a few other quirks that have not made it into modern languages.
The java it made was awful, but now it could be replaced module by module as new/changed functionality was required.
The translation tool was written in C#, making use of ANTLR.
The other side of the tool was in Java having implementations most of the operators and datatypes from the dead language.
Which included having to implement a virtual memory layer since Unions and pointers were sometimes used.
After we were mostly done, we cam to the conclusion it would have been better to not translate into Java, but into C++, because C++ still has alot of those features that haven't made it into modern languages.
Java was originally chosen because of the cheapness of Java VMs in some particular cluster product/architecture.
When I left this was mostly done. It would compile/translate any sample code you could find for the dead language. What it couldn't do was the database layer. Which was handled with 3 layers of preprocessing on the source code in the dead language, and which needed to be replace with remote db connections instead of what ever interface you use on a mainframe to access the database on it.
I left convinced it would work. But I have no idea if it has been checked back out of version control since I stopped working on it. It could be they are using it today.
I suspect in the long term (which many now be the past), the larger banking group company that bought them 6 months before I started will gut there IT systems entirely, and force them to just use a thin shell infront of the parent companies systems.