Code-cutter Comparing Solutions for 3000s
February 7, 2014
When a 3000 utility goes dark — because its creator has dropped MPE/iX operations, or the trail to the support business for the tool has grown faint — the 3000 community can serve up alternatives quickly. A mature operating system and experienced users offer options that are hard to beat.
One such example was Aldon Computing's SCOMPARE development tool, once a staple for 3000-based developers. It compared source files for more than 15 years in the HP 3000 world. Eventually Aldon left the MPE business. But there are a fistful of alternatives. Allegro Consultants offers a free MPE/iX solution in SCOM, located at
At that Web page, scroll down to SCOM. Other candidates included a compare UDC from Robelle, GNU Diff, diff in the HP 3000's Posix environment, and more. If you're willing to go off the MPE reservation -- and a lot of developers work on PCs by now -- there's even a free plug-in for Notepad++, that freeware source code editor which relaces Notepad in Windows. You can download that plug-in as an open source tool at SourceForge.net
When the subject first surfaced, Bruce Collins of Softvoyage offered details on using diff in the HP 3000's Posix.
run diff.hpbin.sys;info="FILE1 FILE2"
The file names use HFS syntax so they should be entered in upper case. If the files aren't in the current account or group, they should be entered as /ACCOUNT/GROUP/FILE
Donna Hofmeister offered a tip on using Robelle's compare UDC:
Regarding Robelle's compare. Being a scripting advocate, I strongly recommend adapting their UDC into a script.... and take a few seconds to add a wee bit of help text to the script, to make life more enjoyable for all (which is the reason for scripting, yes?)
Other environments that might be operating in the 3000 datacenter provide alternatives. Former HP engineer Lars Appel brought up a Linux option in the KDE development environment:
If using KDE, you might also find Kompare handy...
http://en.wikipedia.org/wiki/Kompare (see screenshot)
On MPE, as others mentioned, there is still the Posix diff in two flavours: the HP-supplied in /bin and the GNU version that lives in /usr/local/bin. The former allows two output formats (diff and diff -c); the latter also allows “diff -u”.
Oh, regarding /bin/diff on MPE... I sometimes got “strange” errors (like “file too big”) from it when trying to compare MPE record oriented files. A workaround was to use tobyte (with -at options) to created bytestream files for diff’ing.
Appel has noted the problem of comparing numbered files, like COBOL source files, when one or both files have been renumbered.
With Posix tools, one might use cut(1) with -c option to “peel off” the line number columns before using diff(1) for comparing the “meat”. Something in the line of ... /bin/cut -c7-72 SourceFile1 > BodyText1.