home bbs files messages ]

Just a sample of the Echomail archive

COMPOSVM:

<< oldest | < older | list | newer > | newest >> ]

 Message 262,390 of 264,034 
 Mark Berryman to Lawrence D'Oliveiro 
 Re: Local Versus Global Command Options 
 16 Feb 25 15:52:23 
 
From: mark@theberrymans.com

On 2/15/25 2:32 PM, Lawrence D'Oliveiro wrote:
> On Sat, 15 Feb 2025 12:22:59 -0700, Mark Berryman wrote:
>
>> So, IMHO, DCL is superior in this regard.
>
> Unfortunately, no. The fundamental problem with DEC OSes (and this
> includes Windows) is that the command line is passed to the program as a
> single string buffer. On *nix systems, it is passed as an array of
> strings.

On *nix systems, the shell parses the command line into an array of
strings using unquoted spaces as the separator which is then passed to
the created process.

On VMS, the crtl does the same parsing which means the program still
sees an array of strings the same as on a *nix system.

If I choose to use DCL, DCL does all of the parsing for me and the
nature of the command-line is irrelevant.

>
> You should be familiar with the well-known problem of one program invoking
> another with a command that might include characters with special meanings
> to a shell. On a *nix system, there is a simple way to avoid those special
> meanings: the first program invokes the second program directly, without
> going through a shell.
>
> Nowadays, there is even a simple library call to do this
> .
>
> This is not so easy to do with a DEC-style command line.

Incorrect.  Programs on DEC OSes can invoke other programs directly and
have been able to at least since the days of the PDP-11 (which somewhat
predates the advent of posix_spawn).  The nature of the command-line is
completely up to the program depending on what function is used to call
the new program.

Mark Berryman

--- SoupGate-DOS v1.05
 * Origin: you cannot sedate... all the things you hate (1:229/2)

<< oldest | < older | list | newer > | newest >> ]


(c) 1994,  bbs@darkrealms.ca