VMS is UNIX spelled backwards (almost)

Norman Pritchett pritch at osu-eddie.UUCP
Fri Nov 30 06:58:57 AEST 1984


As a VMS hacker I suppose it is my duty (:-)) to give some sort of repsonse to
this article.  I thank Michael for saying which version of VMS he was using
because a lot of it sounded as if his only exposure to VMS was version 1.0.
I'd like to start out with just a couple of statements and corrections to
his comments about VMS and DCL.

>o They saw the utility of a command processor as powerful and flexible as the
>  Bourne shell, so they tried to put one in VMS.  Unfortunately, what they
>  ended up with (DCL) was an interpreter for, roughly, a subset of FORTRAN.
>  Whoopee!

I'm not certain if you had the oppurtunity to fully explore , among other
things, the many neat lexical functions to perform string-handling, query
device and system status.  I'll admit there is a definite lack of structured
control statements like an ELSE for IF-THEN statements, DO-WHILE's and
-UNTIL's.  I'll consider this statement as being subjective; DCL has good
points and bad points and I'm happy to live with bad ones to have the good
ones.

>o The notion of standard input and output was implemented through the use of
>  logical names SYS$INPUT, SYS$OUTPUT.  Unfortunately, many standard commands
>  do not read SYS$INPUT or write SYS$OUTPUT, and anyway they forgot to put
>  any I/O redirection syntax into the shell.  Very useful indeed!

There is only one command that I've found which didn't recognize the
SYS$INPUT, or SYS$OUTPUT assignments -- the SHOW SYMBOL command.  All of the
others seem to consistently use those logical names.  There is another one
to consider: SYS$COMMAND which defines where command input as opposed to
data input is coming from.  Unfortunately, VMS utilities do not consistently
use SYS$COMMAND, they may use the assignment of SYS$INPUT instead. I'll
agree with the need for I/O redirection syntax in the shell.

>  ... to ensure
>  compatibility with RSX and avoid frightening users, they restricted each
>  name in a directory path to nine letters or digits, upper-case only ...

DEC's learning, version 4 now allows 31 characters and selected special
characters in a filenames and names in directory path's.  Filenames may also
have extenstions 8 characters long.

>o As in RSX, they had a facility for getting user-supplied arguments into
>  user-written programs.  Unfortunately, as in RSX, the shell could not be
>  induced to pass such arguments to such programs, which had to be invoked
>  by saying "RUN program".  This also, apparently, was intended to avoid
>  frightening users, most of whom were assumed to be FORTRAN-hacking engi-
>  neers who don't trust software anyway.

Hate to say this but the shell can be induced into passing arguments.  You
can tell the shell to run a program by having a symbol defined as the
program name preceded by a `$' (as an example: foo :== $myprogram).  After
you make that definition you merely type the symbol name and the program is
run.  If you wish to pass arguments from command line just put them after
the symbol name ( e.g. foo  THESE ARE MY ARGUMENTS)

>Those VMS-ites who enjoy denigrating UNIX should show some respect.  

This is my real message; If I at all appeared to be anti-UNIX here please
forgive me for leaving the wrong impression.  I personally do not enojoy
seeing anyone put down any operating system.  Each is a tool which is good
at doing sometings well and somethings not so well.  I actively use VMS,
Unix and Tops-20.  In times past I used RSTS/E and RSX-11.  Each had
features which I found particularly appealing and some which are not. You
will not find me saying anyone of these is worse than the other (excepting
RSuX).

The people that I know who continually put down one system or another tend
to be those who try to use things that their system does best on a different
system.

It is probably very naive of me to expect this, but I wish that everybody
would stop complaining about everbody else's operating system.  If you don't
like the way a certain system handles things then why don't you try doing
the things it's good at instead or find an operating system which does what
you want?


-- 
----------------------------------------------------------------------
					Norm Pritchett
					..osu-dbs!pritch



More information about the Comp.unix.wizards mailing list