In order to survive in the UNIX world, an MPE user must remember three things:
abc
and ABC
usually
mean the same thing: in UNIX, they usually mean something different.
rm *
UNIX purges every one of
your files without confirming that you really meant to do it.
==
means equals and
=
means assignment.
So count=0; if (count=0)
{printf('hello')}
doesn't print 'hello.'
What it
does is assign 0 to count
, then tests it for
zero (TRUE) or non-zero (FALSE). You should have coded is
if (count==0) {printf('hello')}
. This is
the most common C programming mistake.
The difficulty of porting programs from MPE to UNIX varies from easy to impossible, based upon how much your program depends on the MPE operating system and IMAGE/SQL database. See, for example, the paper by David Greer of Robelle: "Porting Qedit from MPE to HP-UX."