[Info-vax] Moving IBM Mainframe and AS/400 applications to VMS ?, was: Re: Which programming language would you like to see officially supported on VMS ?

G. gerry77 at no.spam.mail.com
Wed Mar 11 08:31:23 EDT 2020


On Mon, 9 Mar 2020 13:38:55 -0000 (UTC), Simon Clubley 

> To those of you more familiar with this, is there any viable path for
> moving these applications from the IBM world to the VMS world ?

In my opinion, short of an almost complete rewrite, no. Speaking about
AS/400 shops, mosts of them rely heavily on RPG while a somewhat smaller
minority on COBOL. The old RPG II compiler once available for VMS would be
almost useless, since the AS/400 RPG is one or two generations newer than
that, i.e. RPG/400 (thing of RPG III+) and RPG IV. Not to mention the fact
that programs may e.g. have embedded SQL statements. Besides, it's the
surrounding environment that would have to be completely rewritten.

For example, think about forms for interactive programs. In OS/400 they are
designed with an interactive nearly-WYSIWYG interface which then produces
some binary file. That file is declared in the program as any other file and
opened for I/O as such. Then, when the program writes to the file, the OS
shows the form to the user, and when the program reads from the file the OS
returns what the user has typed. VMS has several similar mechanisms but they
involve specific function calls in programs, specific linking procedures,
and anyway forms themselves would have to be recreated taking into account
the different environment (e.g. the use of function keys, for example).

Something similar happens for printed reports. They could be described much
like interactive forms and then programs just write raw records to them,
then it's the OS that formats pages, spools them, and so on.

Then there are Control Language (CL) programs, which are the equivalent of
DCL procedures: they have a completely different syntax and would have to be
completely rewritten, also taking into account the equivalent of lexical
functions and OS calls which would have to be replaced or redesigned.

Finally, OS/400 files have embedded field descriptions whereas RMS files
contain only record level descriptions, leaving field level specifications
to CDD repositories or directly emebedded into program sources. Also, RMS
files contain all their indexes whereas OS/400 keeps a distinct file for
every index. There are indexes based on more than one data file, indexes
joining multiple data files into one, indexes that automatically select or
omit specific records from a given data file, and so on. And all of these
differences have an impact on programsand would have to be addressed.

Nothing is impossible, but...

HTH, :)
G.



More information about the Info-vax mailing list