A Renewed Concept
Raincode Legacy Compilers were designed from the ground up as legacy compilers, as opposed to development compilers, in recognition of the fact that they will be used far more often to compile existing portfolios than newly developed code.
The only industrial standard COBOL compiler for .NET and .NET Core. Runs your IBM legacy code into .NET or .NET Core
The Raincode PL/I Compiler for .NET and .NET Core support IBM mainframe syntax, data type and behavior
The Raincode ASM370 compiler for .NET and .NET Core allows you to port, maintain and even debug your assembler code under .NET and .NET Core environment
The JCL Interpreter is aimed at making the transition to the .NET platform as smooth and as painless as possible
Raincode CICS is an emulator for .NET and Azure platforms. It is the ideal companion for the Raincode COBOL compiler and the Raincode PL/I compiler.
Single sourcing or the guarantee of continuity
Single sourcing is the property that ensures that the very same source code currently in production on the mainframe can be used, as is, on the target platform. This means that the source code can be maintained centrally and deployed on both platforms, with strictly equivalent behavior.
When we created the Raincode Legacy Compilers products, the goal wasn’t to build better compilers than the ones they were meant to replace. The focus was on reproducing existing behavior as accurately as possible (even when it seemed vastly sub-optimal or even plain idiotic) to minimize disruption and guarantee continuity as well as functional equivalence.
Single sourcing is also supported by Raincode PL/I′s transparent compile-time DB2 to SQL Server translation.
Legacy compilers are always used in a migration context
Raincode Legacy Compilers provide numerous unique features to support this approach:
A repository with useful information to support migration project organization
Convenient bi-directional interfaces to other .NET components with no requirement for changes to the original source code;
Support for grammatical idiosyncrasies supported by older compilers, so that even minor – and generally inconsequential – changes can be avoided in most cases