Groups | Search | Server Info | Login | Register


Groups > comp.os.vms > #378378

Re: DCL2

From cross@spitfire.i.gajendra.net (Dan Cross)
Newsgroups comp.os.vms
Subject Re: DCL2
Date 2025-12-15 16:37 +0000
Organization PANIX Public Access Internet and UNIX, NYC
Message-ID <10hpdgu$1sb$1@reader2.panix.com> (permalink)
References <10h055c$217jf$1@dont-email.me> <mn.32be7e9cef74b7c5.104627@invalid.skynet.be> <10hl4r2$jeli$4@dont-email.me> <10hnpjg$2648n$1@paganini.bofh.team>

Show all headers | View raw


In article <10hnpjg$2648n$1@paganini.bofh.team>,
Waldek Hebisch <antispam@fricas.org> wrote:
>Lawrence D’Oliveiro <ldo@nz.invalid> wrote:
>> On Sat, 06 Dec 2025 11:42:47 +0100, Marc Van Dyck wrote:
>> 
>>> User written lexical functions, on the other hand, would be a real
>>> bonus. There are, for one, still many parts of the operating system for
>>> which you need to get information, and the only possible way to do it is
>>> to parse some output (think of everything TCP/IP, for example), while
>>> there is a callable interface available to get the info properly.
>> 
>> POSIXish shells seem to feel less need for such built-in extensions.
>> 
>> Is this a reflection on the ease of doing command substitutions in them, 
>> vis-à-vis DCL?
>> 
>> Some newer commands in the Linux world have the option to produce output 
>> in JSON format, which also helps.
>
>First, backwards compatibility is a powerful force blocking
>possible improvement.  I was using Sun OS and Solaris in
>nineties.  Later I looked at Solaris from 2007.  In 2007
>they shipped crappy '/bin/sh' which had exactly the same
>problems as I remembered from my earlier use.  I suspect
>that it was bug-for-bug compatible with '/bin/sh' which
>they shipped in 1984.  And I suspect that if you get
>current Solaris from Oracle, you will get the same crappy
>'/bin/sh'.

It is true that Solaris/illumos put large, perhaps almost
excessive, emphasis on stability and backwards compatibility.
However in this case, the criticism is a bit unfair.  As you
sort of alude below, on Unix systems, command interpreters are
interchangeable.  Both Solaris and illumos ship with multiple
shells, and the preference is to write scripts using ksh93, not
/bin/sh.  That said, I will grant you that it is annoying to
have to assume the subset of behavior defined by 7th Edition
research Unix for "portable" shell scripts, and increasingly
even that is tenuous on Linux systems.

>The same forces that prevent improvments to '/bin/sh' work
>for DCL, so chance of change here is very small.
>
>Second, early Unix had relatively cheap process creation,
>but some implementations (PDP-11 and 16-bit Xenix) had
>thight limit on process size.  So, there was preference
>to using external commands for extentions.  Unix provides
>commands (and /proc filesystem in Linux) so that information
>is available in textual form, meaning less need for
>libraray API.

Not only is there less need, it would have been rather difficult
in early Unix.  There was little sharing going on back then; I
think some of that was a reaction to the complexity of sharing
in Multics.  It took 20-ish years to get shared libraries, and
even then the model that won was based on TENEX and GENIE.

>Third, Unix shell does not play as distingished role as
>DCL in VMS, users can have different shells.  There are
>scripting languages and for programming shell is just
>one of available scripting languages.  Some scripting
>languages (like Perl) give access to system calls, most
>have FFI, so that one can call code in shared libraries.

Indeed.

However, I'll go out on a limb and say that, whatever the
limitations of DCL, Unix shells aren't particularly good
programming languages, and would be a bad model to emulate.
They spend too much effort trying to thread the needle between
being interactive command interpreters, with all of the rich UI
semantics that demands, _and_ being programming languages; in
areas where these conflict, the experience is usually mediocre
for both.

One feels that, in a sense, both Unix and VMS suffer from lack
of clear separation here, but on balance, VMS is probably better
suited to address that precisely because of the privileged
position of DCL in the overall system.  _If_ the user's state
were represented by well-defined objects with clear interfaces,
then one could imagine a programming language that would be
co-equal to a command interpreter, but that was _just_ a
language interpreter, and not a shell; the shell similarly would
be just a shell, and not a programming language interpreter.

By way of example, one might look to z/VM and CMS and the way
that REXX and XEDIT are integrated into the environment; REXX is
not a command interpreter, but one can easily write the
equivalent of shell scripts in it.  Similarly, XEDIT is a text
editor, but REXX scripts can "address", thus making it possible
to implement REXX programs with TUIs that leverage the
(considerable) power of the text editor.  The result is a
plethora of very rich, yet highly consistent, text-oriented
interfaces: the file and mail readers, the help system, etc.

Implementing this in a general way for a Unix-style system would
be, essentially, impossible.  And while it would be a heavy lift
for VMS, I imagine it would at least be possible.

Would it be worth it, though?  Particularly vis an incremental
improvement to the existing system?  I kind of doubt it.

	- Dan C.

Back to comp.os.vms | Previous | NextPrevious in thread | Next in thread | Find similar


Thread

DCL2 Arne Vajhøj <arne@vajhoej.dk> - 2025-12-05 21:41 -0500
  Re: DCL2 Marc Van Dyck <marc.gr.vandyck@invalid.skynet.be> - 2025-12-06 11:42 +0100
    Re: DCL2 Arne Vajhøj <arne@vajhoej.dk> - 2025-12-06 10:33 -0500
      Re: DCL2 Arne Vajhøj <arne@vajhoej.dk> - 2025-12-06 10:57 -0500
        Re: DCL2 Chris Townley <news@cct-net.co.uk> - 2025-12-06 16:12 +0000
          Re: DCL2 kludge@panix.com (Scott Dorsey) - 2025-12-06 14:45 -0500
            Re: DCL2 Arne Vajhøj <arne@vajhoej.dk> - 2025-12-06 15:23 -0500
              Re: DCL2 Arne Vajhøj <arne@vajhoej.dk> - 2025-12-06 15:47 -0500
                Re: DCL2 Arne Vajhøj <arne@vajhoej.dk> - 2025-12-07 12:03 -0500
              Re: [Info-vax] DCL2 Arne Vajhøj <arne@vajhoej.dk> - 2025-12-07 12:09 -0500
            Re: DCL2 Chris Townley <news@cct-net.co.uk> - 2025-12-07 14:18 +0000
              Re: DCL2 kludge@panix.com (Scott Dorsey) - 2025-12-07 10:03 -0500
              Re: DCL2 cross@spitfire.i.gajendra.net (Dan Cross) - 2025-12-08 20:13 +0000
        Re: [Info-vax] DCL2 Arne Vajhøj <arne@vajhoej.dk> - 2025-12-06 15:41 -0500
    Re: DCL2 Lawrence D’Oliveiro <ldo@nz.invalid> - 2025-12-14 01:45 +0000
      Re: DCL2 antispam@fricas.org (Waldek Hebisch) - 2025-12-15 01:51 +0000
        Re: DCL2 Lawrence D’Oliveiro <ldo@nz.invalid> - 2025-12-15 02:56 +0000
        Re: DCL2 cross@spitfire.i.gajendra.net (Dan Cross) - 2025-12-15 16:37 +0000
          Re: DCL2 jgd@cix.co.uk (John Dallman) - 2025-12-15 19:37 +0000
            Re: DCL2 Lawrence D’Oliveiro <ldo@nz.invalid> - 2025-12-15 22:59 +0000
      Re: DCL2 Arne Vajhøj <arne@vajhoej.dk> - 2025-12-15 11:58 -0500
  Re: DCL2 "Craig A. Berry" <craigberry@nospam.mac.com> - 2025-12-06 15:28 -0600
    Re: DCL2 Arne Vajhøj <arne@vajhoej.dk> - 2025-12-06 18:46 -0500
      Re: DCL2 "Craig A. Berry" <craigberry@nospam.mac.com> - 2025-12-07 07:17 -0600
        Re: DCL2 Arne Vajhøj <arne@vajhoej.dk> - 2025-12-07 11:07 -0500
          Re: DCL2 Arne Vajhøj <arne@vajhoej.dk> - 2025-12-07 11:13 -0500
            Re: DCL2 steve sparrow <sdsparrow@aol.com> - 2025-12-08 11:14 -0600
              Re: DCL2 Arne Vajhøj <arne@vajhoej.dk> - 2025-12-08 19:07 -0500
        Re: DCL2 cross@spitfire.i.gajendra.net (Dan Cross) - 2025-12-16 14:05 +0000
          Re: DCL2 "Craig A. Berry" <craigberry@nospam.mac.com> - 2025-12-16 15:20 -0600
            Re: DCL2 Lawrence D’Oliveiro <ldo@nz.invalid> - 2025-12-16 21:59 +0000
            Re: DCL2 Arne Vajhøj <arne@vajhoej.dk> - 2025-12-16 20:17 -0500
              Re: DCL2 Arne Vajhøj <arne@vajhoej.dk> - 2025-12-16 20:42 -0500
              Re: DCL2 "Craig A. Berry" <craigberry@nospam.mac.com> - 2025-12-17 07:19 -0600
                Re: DCL2 Arne Vajhøj <arne@vajhoej.dk> - 2025-12-18 09:46 -0500
              Re: DCL2 Arne Vajhøj <arne@vajhoej.dk> - 2025-12-18 09:44 -0500
            Re: DCL2 cross@spitfire.i.gajendra.net (Dan Cross) - 2025-12-17 16:55 +0000
          Re: DCL2 Arne Vajhøj <arne@vajhoej.dk> - 2025-12-16 20:26 -0500
            Re: DCL2 cross@spitfire.i.gajendra.net (Dan Cross) - 2025-12-17 16:57 +0000
              SIMH + OpenVMS 5.5-2H4 standalone BACKUP: ISO appears as DJAx not DUAx flexmcmurphy <plica2006@gmail.com> - 2025-12-17 23:00 +0000
              Re: DCL2 Arne Vajhøj <arne@vajhoej.dk> - 2025-12-17 20:45 -0500
                Re: DCL2 cross@spitfire.i.gajendra.net (Dan Cross) - 2025-12-18 15:03 +0000
      Re: DCL2 Lawrence D’Oliveiro <ldo@nz.invalid> - 2025-12-14 01:41 +0000
        Re: DCL2 Arne Vajhøj <arne@vajhoej.dk> - 2025-12-15 11:59 -0500
          Re: DCL2 Lawrence D’Oliveiro <ldo@nz.invalid> - 2025-12-15 23:01 +0000
            Re: DCL2 Arne Vajhøj <arne@vajhoej.dk> - 2025-12-15 19:28 -0500
              Re: DCL2 Lawrence D’Oliveiro <ldo@nz.invalid> - 2025-12-16 01:24 +0000
                Re: DCL2 Sam Thomas <sam@noneya.com> - 2025-12-16 17:38 +0000
                Re: DCL2 Lawrence D’Oliveiro <ldo@nz.invalid> - 2025-12-16 22:07 +0000
                Re: DCL2 Sam Thomas <sam@noneya.com> - 2025-12-17 14:52 +0000
                Re: DCL2 Arne Vajhøj <arne@vajhoej.dk> - 2025-12-17 20:34 -0500
                Re: DCL2 Lawrence D’Oliveiro <ldo@nz.invalid> - 2025-12-18 02:31 +0000
                Re: DCL2 Arne Vajhøj <arne@vajhoej.dk> - 2025-12-17 21:40 -0500
  Re: DCL2 Simon Clubley <clubley@remove_me.eisner.decus.org-Earth.UFP> - 2025-12-08 14:12 +0000
    Re: DCL2 Simon Clubley <clubley@remove_me.eisner.decus.org-Earth.UFP> - 2025-12-08 14:23 +0000
    Re: DCL2 bill <bill.gunshannon@gmail.com> - 2025-12-08 15:42 -0500
      Re: DCL2 cross@spitfire.i.gajendra.net (Dan Cross) - 2025-12-10 20:50 +0000
        Re: DCL2 Simon Clubley <clubley@remove_me.eisner.decus.org-Earth.UFP> - 2025-12-11 13:11 +0000
          Re: DCL2 cross@spitfire.i.gajendra.net (Dan Cross) - 2025-12-11 16:22 +0000
    Re: DCL2 Arne Vajhøj <arne@vajhoej.dk> - 2025-12-08 19:58 -0500
      Re: DCL2 Simon Clubley <clubley@remove_me.eisner.decus.org-Earth.UFP> - 2025-12-09 13:31 +0000
    Re: DCL2 Arne Vajhøj <arne@vajhoej.dk> - 2025-12-08 20:35 -0500
      Re: DCL2 Simon Clubley <clubley@remove_me.eisner.decus.org-Earth.UFP> - 2025-12-09 13:55 +0000
        Re: DCL2 Arne Vajhøj <arne@vajhoej.dk> - 2025-12-09 20:08 -0500
          Re: DCL2 Simon Clubley <clubley@remove_me.eisner.decus.org-Earth.UFP> - 2025-12-10 14:14 +0000
  Re: DCL2 Mark Berryman <mark@theberrymans.com> - 2025-12-13 11:27 -0700
    Re: DCL2 Lawrence D’Oliveiro <ldo@nz.invalid> - 2025-12-14 01:31 +0000
    Re: DCL2 Arne Vajhøj <arne@vajhoej.dk> - 2025-12-15 11:48 -0500

csiph-web