[Info-vax] Learning VMS application programming
Stephen Hoffman
seaohveh at hoffmanlabs.invalid
Tue Sep 2 18:18:10 EDT 2014
On 2014-09-02 20:27:30 +0000, wendellxe at yahoo.com said:
> I've been looking for a tutorial book on VMS programming, something
> akin to Rochkind's _Advanced Unix Programming_.
I've not encountered anything similar.
> I haven't found anything online, but I've seen mention of these two
> books. Could anyone comment on their contents and/or recommend
> something else?
>
> Writing VAX/VMS Applications Using Pascal (Theo de Klerk, 1991)
>
> Software Implementation Techniques: Writing Software in OpenVMS,
> OS/2, UNIX and Windows NT (Donald Merusi, 1995)
Neither is particularly similar to the cited Unix book, AFAIK.
> Coming from Unix, I'm used to designing around the interaction of
> small, modular tools and using flat text files as a common interchange
> format. I need a thorough explanation of how to best design around
> VMS's heavier process model and relative complexity of the RMS.
I'm wondering if you're really in "the deep end of the pool" here, and
might be better served with either some custom training, or by bringing
somebody in to help with whatever you've been working with. Your
phrasing is somewhat unusual for this, and it can be inferred that
you've just been handed a project on a platform that you're not
familiar with. Coming up to speed on general VMS programming will
probably take most of six months of varied experience, and possibly
longer. Driver programming and kernel-mode can take longer.
In general, RMS is an integrated NOSQL database. It can often be
ignored, as most languages have native calls to the file system that
use RMS on your behalf, and these language calls then look and work as
you'd expect. If you want details of RMS, see the Guide to File
Applications in the documentation set, then the RMS Reference manual,
and I have some C RMS wrappers available at
<http://labs.hoffmanlabs.com/node/1260>
Processes are heavy compared to Unix — which you're always in a
different process — and used to be heavy when VAX was slow, but it's
rare for processes to be a particular problem now, barring odd
application designs. The difference is that you're in the same process
context for the entire lifetime of your login, barring the creation of
subprocesses, detached processes, batch processes or such; unless you
go looking for and explicitly creating another process.
> I have looked through much of the docs available from HP, but they are
> not suitable tutorial material.
Usual recommendation: Programming Concepts (which is scattershot in its
organization) and then the compiler manuals and the RTL and system
services and other references.
Roland Hughes has a few books out
<http://www.theminimumyouneedtoknow.com>, but most everything else is
likely long out of print, and a chunk of it is out of date. (Documents
and books older than the late V7 or V8 range likely omit a number of C
calls, GNV tools, and other programming interfaces that were added
~V7.3-2 and later.)
There's a list of books in the old VMS FAQ:
<http://labs.hoffmanlabs.com/vmsfaq>
--
Pure Personal Opinion | HoffmanLabs LLC
More information about the Info-vax
mailing list