• Re: DCL2

    From Lawrence =?iso-8859-13?q?D=FFOliveiro?=@ldo@nz.invalid to comp.os.vms on Mon Dec 15 02:56:17 2025
    From Newsgroup: comp.os.vms

    On Mon, 15 Dec 2025 01:51:47 -0000 (UTC), Waldek Hebisch wrote:

    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 was quite common for Unix admins, back in the day, as soon as they
    had set up a new machine, to install the GNU tools (bash etc) on it.
    That way, you didnrCOt have to put up with the crappy, proprietary, vendor-provided tools.
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From cross@cross@spitfire.i.gajendra.net (Dan Cross) to comp.os.vms on Mon Dec 15 16:37:50 2025
    From Newsgroup: comp.os.vms

    In article <10hnpjg$2648n$1@paganini.bofh.team>,
    Waldek Hebisch <antispam@fricas.org> wrote:
    Lawrence DrCOOliveiro <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-|a-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.

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From =?UTF-8?Q?Arne_Vajh=C3=B8j?=@arne@vajhoej.dk to comp.os.vms on Mon Dec 15 11:48:10 2025
    From Newsgroup: comp.os.vms

    On 12/13/2025 1:27 PM, Mark Berryman wrote:
    On 12/5/25 7:41 PM, Arne Vajh|+j wrote:
    A reimplementation of DCL in C (or another language, but C is
    probably the current preference) is not a solution:
    * risk only achieving 99.9% compatiblity instead of 100% compatibility
    * expensive

    Why not make a 2nd DCL, one that can live on the system in parallel with
    the current DCL.-a Call it DCL64 since it would use 64-bit variables
    instead of 32-bit.-a Which DCL a given process used would be specified in sysuaf or creprc (and, possibly, spawn).-a I'd would also like to see the following:

    1. Variables can be integer, string, or floating-point.
    2. Longer string lengths.
    3. Enhance SYS$FAO to support floating-point.
    4. New constructs (e.g. loops, arrays, etc.)
    5. Lexicals match system functions.
    -a-a (i.e., easy for the vendor to update lexicals to match new functions
    -a-a-a or enhanced functionality and being able to specify multiple items
    -a-a-a to return in a single lexical call)
    6. An option to make pipe syntax the default without having to specify
    the pipe command.
    7. An option to make Set process/parse=extend and Set process/
    token=extend as default.
    8. Commands and switches match on 8 chars instead of 4.
    -a-a (e.g., I'd like to see both open and openssl exist as separate commands).
    9. No automatic upcasing the command line.-a (Internal parsing is case- insensitive).-a The idea is to reduce the need for lib$initialize in utilities written in C.
    10. Otherwise, still DCL.
    11. Perhaps even make the character set UTF-8 instead of ASCII.-a (Of course, then I'd be asking for a DECterm that used UTF-8).

    That would be a better DCL.

    :-)

    Benefits:

    No need to be 100% backwards compatible.-a Make it as backwards
    compatible as possible but the edge cases that make it difficult to
    rewrite DCL in a HLL wouldn't apply since the original DCL is still
    there to handle them.

    So if someone needed old DCL for an edge case they could just
    login with /CLI=DCL (users having DCL64 as default in SYSUAF)?

    That still leaves the investment though.

    Arne

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From =?UTF-8?Q?Arne_Vajh=C3=B8j?=@arne@vajhoej.dk to comp.os.vms on Mon Dec 15 11:58:21 2025
    From Newsgroup: comp.os.vms

    On 12/13/2025 8:45 PM, Lawrence DrCOOliveiro 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-|a-vis DCL?

    The Linux way is pseudo files instead of lexical functions.

    The difference between:
    cat some pseudo file
    process output
    and:
    execute some program
    process output
    is practically none.

    While the difference between:
    $ res = f$something()
    and:
    execute some program
    process output
    is big.

    So no surprise that VMS people see the need but Linux does not.

    Arne


    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From =?UTF-8?Q?Arne_Vajh=C3=B8j?=@arne@vajhoej.dk to comp.os.vms on Mon Dec 15 11:59:51 2025
    From Newsgroup: comp.os.vms

    On 12/13/2025 8:41 PM, Lawrence DrCOOliveiro wrote:
    On Sat, 6 Dec 2025 18:46:52 -0500, Arne Vajh|+j wrote:
    PS is *the* shell for Windows admins, but has it caught on with Linux
    admins?

    No. And judging from some of the struggles Windows users are having with
    it, it may not be that well-supported on Windows now, either.

    BTW, I have never liked PS - it just doesn't appear logical to me, but
    that is just my personal opinion.

    I have this feeling that more and more Windows diehards (inside and
    outside Microsoft) are simply installing WSL2 and using the Linux command line instead.

    Not likely.

    As it would be practically useless for Windows admin tasks.

    Arne

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From jgd@jgd@cix.co.uk (John Dallman) to comp.os.vms on Mon Dec 15 19:37:00 2025
    From Newsgroup: comp.os.vms

    In article <10hpdgu$1sb$1@reader2.panix.com>,
    cross@spitfire.i.gajendra.net (Dan Cross) wrote:

    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.

    Ubuntu's replacement of classic sh by the not-entirely-compatible dash
    was a particular low point there.

    John
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Lawrence =?iso-8859-13?q?D=FFOliveiro?=@ldo@nz.invalid to comp.os.vms on Mon Dec 15 22:59:16 2025
    From Newsgroup: comp.os.vms

    On Mon, 15 Dec 2025 19:37 +0000 (GMT Standard Time), John Dallman wrote:

    Ubuntu's replacement of classic sh by the not-entirely-compatible
    dash was a particular low point there.

    dash is meant to be a more strict and less feature-ridden
    POSIX-compliant shell. ItrCOs on Debian, too. So rCL/bin/shrCY stopped referring to bash years ago, and now uses dash instead.

    From <https://manpages.debian.org/dash(1)>:

    dash is the standard command interpreter for the system. The
    current version of dash is in the process of being changed to
    conform with the POSIX 1003.2 and 1003.2a specifications for the
    shell. This version has many features which make it appear similar
    in some respects to the Korn shell, but it is not a Korn shell
    clone (see ksh(1)). Only features designated by POSIX, plus a few
    Berkeley extensions, are being incorporated into this shell. This
    man page is not intended to be a tutorial or a complete
    specification of the shell.

    If you want /bin/bash, you say /bin/bash.
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Lawrence =?iso-8859-13?q?D=FFOliveiro?=@ldo@nz.invalid to comp.os.vms on Mon Dec 15 23:01:17 2025
    From Newsgroup: comp.os.vms

    On Mon, 15 Dec 2025 11:59:51 -0500, Arne Vajh|+j wrote:

    On 12/13/2025 8:41 PM, Lawrence DrCOOliveiro wrote:

    I have this feeling that more and more Windows diehards (inside and
    outside Microsoft) are simply installing WSL2 and using the Linux
    command line instead.

    Not likely.

    As it would be practically useless for Windows admin tasks.

    Most of those use point-and-click anyway. Or this new rCLAgentic AIrCY
    thing.

    Meanwhile, the important software-development stuff is moving more and
    more to Linux.
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From =?UTF-8?Q?Arne_Vajh=C3=B8j?=@arne@vajhoej.dk to comp.os.vms on Mon Dec 15 19:28:42 2025
    From Newsgroup: comp.os.vms

    On 12/15/2025 6:01 PM, Lawrence DrCOOliveiro wrote:
    On Mon, 15 Dec 2025 11:59:51 -0500, Arne Vajh|+j wrote:
    On 12/13/2025 8:41 PM, Lawrence DrCOOliveiro wrote:
    I have this feeling that more and more Windows diehards (inside and
    outside Microsoft) are simply installing WSL2 and using the Linux
    command line instead.

    Not likely.

    As it would be practically useless for Windows admin tasks.

    Most of those use point-and-click anyway. Or this new rCLAgentic AIrCY
    thing.

    No.

    The normal end users like GUI, but the serious Windows admins script
    a lot.

    And today that is mostly PS.

    Arne


    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Lawrence =?iso-8859-13?q?D=FFOliveiro?=@ldo@nz.invalid to comp.os.vms on Tue Dec 16 01:24:02 2025
    From Newsgroup: comp.os.vms

    On Mon, 15 Dec 2025 19:28:42 -0500, Arne Vajh|+j wrote:

    On 12/15/2025 6:01 PM, Lawrence DrCOOliveiro wrote:

    On Mon, 15 Dec 2025 11:59:51 -0500, Arne Vajh|+j wrote:

    On 12/13/2025 8:41 PM, Lawrence DrCOOliveiro wrote:

    I have this feeling that more and more Windows diehards (inside and
    outside Microsoft) are simply installing WSL2 and using the Linux
    command line instead.

    Not likely.

    As it would be practically useless for Windows admin tasks.

    Most of those use point-and-click anyway. Or this new rCLAgentic AIrCY
    thing.

    No.

    The normal end users like GUI, but the serious Windows admins script a
    lot.

    And today that is mostly PS.

    Somehow I doubt that. Remember, Microsoft spent years, decades,
    conditioning its users to be allergic to the command line.

    Then they did an about-face and introduced PowerShell. But something tells
    me that has not been as big a success as some might have hoped.
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From cross@cross@spitfire.i.gajendra.net (Dan Cross) to comp.os.vms on Tue Dec 16 14:05:46 2025
    From Newsgroup: comp.os.vms

    In article <10h3upk$3f20l$1@dont-email.me>,
    Craig A. Berry <craigberry@nospam.mac.com> wrote:
    [...] But with people using scripting
    languages to process massive vectors to train LLM models, it all seems
    pretty puny.

    This is a good point, but, I sometimes wonder if, perhaps, we
    need to recalibrate what we mean when we say, "scripting
    language." I imagine that you are referring to Python here, as
    that seems to be the thing that the kids are all hip on these
    days when it comes to model training and such-like, but I think
    it's fair to say that that language has grown far beyond
    traditional "scripting" use.

    Python is interpreted, yes, but people who are using it to do
    numerical analysis are often using the jit-compiled variant, and
    more often the actual heavy computational lifting is being done
    in a library that's exposed to Python via an FFI; so the actual
    training code is in Fortran or C or some more traditional
    compiled language.

    There is, evidently, a need (or at least desire) for a really
    good interpreted language to script various system management
    tasks; I gather folks feel that DCL is a bit long in the tooth
    and insufficient for that. As I mentioned before, I feel like
    that is qualitatively different than using DCL as an interactive
    CLI; perhaps the solution here is just to build out a really
    nice set of officially supported modules for, say, Python (or a
    similar suitable language) and call it a day.

    - Dan C.

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Sam Thomas@sam@noneya.com to comp.os.vms on Tue Dec 16 17:38:47 2025
    From Newsgroup: comp.os.vms

    Lawrence D?Oliveiro <ldo@nz.invalid> wrote:
    On Mon, 15 Dec 2025 19:28:42 -0500, Arne Vajhoj wrote:

    On 12/15/2025 6:01 PM, Lawrence D?Oliveiro wrote:

    Most of those use point-and-click anyway. Or this new ?Agentic AI?
    thing.

    No.

    The normal end users like GUI, but the serious Windows admins script a
    lot.

    And today that is mostly PS.

    Somehow I doubt that. Remember, Microsoft spent years, decades,
    conditioning its users to be allergic to the command line.

    Then they did an about-face and introduced PowerShell. But something tells me that has not been as big a success as some might have hoped.

    sigh... </lurk>
    I work in a big-ish Windows environment. GUI is used when necessary, and everything else is scripted. With PS. I'm a network engineer, so I use
    WSL2 and Linux VMs, but I don't really manage anything Windows.

    It is well-received amongst the Windows admins I'm surrounded by. Nobody is saying they wish they could just clicky-click several hundred times to do something that could go in a for loop. Most of our Windows VMs don't even
    have a GUI installed (datacenter edition).

    As to Arne's earlier question of PS adoption in Linux... Hell NO. PS runs counter to how *nix people think. It is bloated, excruciatingly verbose,
    and its "everything's an object" model breaks pipelining in the *nix
    paradigm. This doesn't even address the religious objections. No thank you.

    -Sam<lurk>
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Craig A. Berry@craigberry@nospam.mac.com to comp.os.vms on Tue Dec 16 15:20:19 2025
    From Newsgroup: comp.os.vms


    On 12/16/25 8:05 AM, Dan Cross wrote:
    In article <10h3upk$3f20l$1@dont-email.me>,
    Craig A. Berry <craigberry@nospam.mac.com> wrote:
    [...] But with people using scripting
    languages to process massive vectors to train LLM models, it all seems
    pretty puny.

    This is a good point, but, I sometimes wonder if, perhaps, we
    need to recalibrate what we mean when we say, "scripting
    language." I imagine that you are referring to Python here, as
    that seems to be the thing that the kids are all hip on these
    days when it comes to model training and such-like, but I think
    it's fair to say that that language has grown far beyond
    traditional "scripting" use.

    Python is interpreted, yes, but people who are using it to do
    numerical analysis are often using the jit-compiled variant, and
    more often the actual heavy computational lifting is being done
    in a library that's exposed to Python via an FFI; so the actual
    training code is in Fortran or C or some more traditional
    compiled language.

    Yes, of course. The scripting language will use a library (e.g., NumPy
    or PyTorch) that exposes interfaces to various kinds of hardware
    acceleration. But eventually there is processed data returned that gets manipulated using ordinary constructs of the calling language. My
    comment arose in the context of DCL and Arne's suggestion of a new
    wrapper language around DCL supplying new features; if any of those new features tries to put more than 8192 bytes into a DCL symbol, that ain't
    gonna work. And the same would be true for a new lexical function in
    current DCL.

    There is, evidently, a need (or at least desire) for a really
    good interpreted language to script various system management
    tasks; I gather folks feel that DCL is a bit long in the tooth
    and insufficient for that. As I mentioned before, I feel like
    that is qualitatively different than using DCL as an interactive
    CLI; perhaps the solution here is just to build out a really
    nice set of officially supported modules for, say, Python (or a
    similar suitable language) and call it a day.

    Python, Perl, and Lua all exist. Probably all could use additional work
    for VMS-specific administrative tasks. Not sure the state of Ruby, but
    there is JRuby. And at least a couple of other JVM-based scripting
    options. So it's not like people are struggling between DCL and nothing.

    In a way I agree with you that a good scripting language should not have
    to be a good CLI and vice versa. But there is an important category of
    script that starts off as one long command, gets split into two or more commands, wrapped in a loop, parameterized for different inputs, put in
    a subroutine, and has features added like e-mailing the output to a distribution list. Now you've got a program, and there is no obvious
    point in that process where it's free or easy to switch languages.

    So while it's certainly not the only paradigm for writing scripts, it's
    darn convenient to have a CLI that can also function as a decent
    programming language. DCL would have fit the bill 30 years ago but now
    not so much. Thus the discussion about enhancing or replacing DCL.
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Lawrence =?iso-8859-13?q?D=FFOliveiro?=@ldo@nz.invalid to comp.os.vms on Tue Dec 16 21:59:31 2025
    From Newsgroup: comp.os.vms

    On Tue, 16 Dec 2025 15:20:19 -0600, Craig A. Berry wrote:

    But there is an important category of script that starts off as one
    long command, gets split into two or more commands, wrapped in a
    loop, parameterized for different inputs, put in a subroutine, and
    has features added like e-mailing the output to a distribution list.
    Now you've got a program, and there is no obvious point in that
    process where it's free or easy to switch languages.

    Still doesnrCOt change the fact that languages designed for command-line
    use are different in an important way from those designed for writing programs/scripts.

    The main difference comes down to this: in a command language,
    everything typed is a literal string unless special variable/command-substitution constructs indicate otherwise. Whereas
    in a programming/scripting language, everything is a statement or
    expression unless some kind of quoting mechanism indicates literal
    strings.
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Lawrence =?iso-8859-13?q?D=FFOliveiro?=@ldo@nz.invalid to comp.os.vms on Tue Dec 16 22:07:49 2025
    From Newsgroup: comp.os.vms

    On Tue, 16 Dec 2025 17:38:47 -0000 (UTC), Sam Thomas wrote:

    I work in a big-ish Windows environment. GUI is used when necessary,
    and everything else is scripted. With PS. I'm a network engineer, so
    I use WSL2 and Linux VMs, but I don't really manage anything
    Windows.

    It is well-received amongst the Windows admins I'm surrounded by.
    Nobody is saying they wish they could just clicky-click several
    hundred times to do something that could go in a for loop. Most of
    our Windows VMs don't even have a GUI installed (datacenter
    edition).

    As to Arne's earlier question of PS adoption in Linux... Hell NO. PS
    runs counter to how *nix people think. It is bloated, excruciatingly
    verbose, and its "everything's an object" model breaks pipelining in
    the *nix paradigm. This doesn't even address the religious
    objections. No thank you.

    Let me see if I understand this: you have Windows-using colleagues who
    are fond of PowerShell, while you would avoid it like the plague for
    *nix-based workflows.

    These same colleagues are using the rCLDatacenter editionrCY of Windows
    Server. Worth pointing out that on-prem editions of Windows Server are
    no longer getting quite the same love from Microsoft as the cloud
    version. They are putting more effort into the cloud versions going
    forward.

    And the cloud is, of course, dominated by Linux. So the future of
    Windows Server here, too, seems a bit limited.
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From =?UTF-8?Q?Arne_Vajh=C3=B8j?=@arne@vajhoej.dk to comp.os.vms on Tue Dec 16 20:17:35 2025
    From Newsgroup: comp.os.vms

    On 12/16/2025 4:20 PM, Craig A. Berry wrote:
    On 12/16/25 8:05 AM, Dan Cross wrote:
    There is, evidently, a need (or at least desire) for a really
    good interpreted language to script various system management
    tasks; I gather folks feel that DCL is a bit long in the tooth
    and insufficient for that.-a As I mentioned before, I feel like
    that is qualitatively different than using DCL as an interactive
    CLI; perhaps the solution here is just to build out a really
    nice set of officially supported modules for, say, Python (or a
    similar suitable language) and call it a day.

    Python, Perl, and Lua all exist. Probably all could use additional work
    for VMS-specific administrative tasks.-a Not sure the state of Ruby,

    I don't remember ever seeing MRI being ported to VMS.

    but
    there is JRuby.

    Yes.

    It was ported to VMS in the past.

    And a recent version can build code on PC and run code on VMS.

    -a And at least a couple of other JVM-based scripting
    options.

    There are lots.

    Groovy
    Jython - Python
    Rhino/Nashorn - JavaScript
    Quercus - PHP
    LuaJ - Lua
    JACL - Tcl
    ABCL - Lisp
    NetRexx - Rexx
    etc.

    But none of them are widely used on VMS.

    Many of them are way behind in language version. Jython is Python 2.7,
    Quercus is PHP 5.6 and so on.

    They are typical great at integrating with Java stuff and not so
    great integrating with native stuff. And the need to integrate
    with native stuff is more common than the need to integrate with
    Java stuff.

    As Python 2.7 has become obsolete then I consider Groovy
    the only feasible candidate for production ready JVM based
    script language on VMS.

    But I really do like Groovy.

    (and I have also written a lot about it and how to integrate
    it with stuff on VMS)

    Arne

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From =?UTF-8?Q?Arne_Vajh=C3=B8j?=@arne@vajhoej.dk to comp.os.vms on Tue Dec 16 20:26:12 2025
    From Newsgroup: comp.os.vms

    On 12/16/2025 9:05 AM, Dan Cross wrote:
    In article <10h3upk$3f20l$1@dont-email.me>,
    Craig A. Berry <craigberry@nospam.mac.com> wrote:
    [...] But with people using scripting
    languages to process massive vectors to train LLM models, it all seems
    pretty puny.

    This is a good point, but, I sometimes wonder if, perhaps, we
    need to recalibrate what we mean when we say, "scripting
    language." I imagine that you are referring to Python here, as
    that seems to be the thing that the kids are all hip on these
    days when it comes to model training and such-like, but I think
    it's fair to say that that language has grown far beyond
    traditional "scripting" use.

    ML, data processing and web has certainly passed admin
    scripting in usage.

    Python is interpreted, yes, but people who are using it to do
    numerical analysis are often using the jit-compiled variant,

    Most still use CPython.

    None of the JIT implementations PyPy, GraalPy, Codon etc. has
    really gotten traction.

    (CPython 3.13+ actually comes with JIT, but it does not provide
    the same speedup as PyPy and GraalPy can for those CPU intensive
    cases that should never be done in Python)

    Reason: fear of compatibility issues combined with the fact that
    JIT usually does not matter.

    Because:

    and
    more often the actual heavy computational lifting is being done
    in a library that's exposed to Python via an FFI; so the actual
    training code is in Fortran or C or some more traditional
    compiled language.

    If CPython interpretation use 0.1-1.0% of total CPU usage
    and native library execution use 99.0-99.9% of total CPU usage,
    then ...

    Arne

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From =?UTF-8?Q?Arne_Vajh=C3=B8j?=@arne@vajhoej.dk to comp.os.vms on Tue Dec 16 20:42:53 2025
    From Newsgroup: comp.os.vms

    On 12/16/2025 8:17 PM, Arne Vajh|+j wrote:
    But I really do like Groovy.

    (and I have also written a lot about it and how to integrate
    it with stuff on VMS)

    VMS Tech Demo 14 - Groovy for scripting:
    https://www.vajhoej.dk/arne/articles/vmstd14.html

    VMS Tech Demo 15 - Groovy for applications:
    https://www.vajhoej.dk/arne/articles/vmstd15.html

    VMS Tech Demo 16 - Groovy for web:
    https://www.vajhoej.dk/arne/articles/vmstd16.html

    And also Groovy examples in:

    VMS web applications:
    https://www.vajhoej.dk/arne/articles/vmsweb.html

    VMS and JDBC drivers
    https://www.vajhoej.dk/arne/articles/vmsjdbc.html

    VMS Tech Demo 9 - index-sequential files and JVM script languages:
    https://www.vajhoej.dk/arne/articles/vmstd9.html

    VMS Tech Demo 10 - Java SOAP web services:
    https://www.vajhoej.dk/arne/articles/vmstd10.html

    VMS Tech Demo 11 - XML-RPC:
    https://www.vajhoej.dk/arne/articles/vmstd11.html

    VMS Tech Demo 13 - Java RESTful web services:
    https://www.vajhoej.dk/arne/articles/vmstd13.html

    VMS Tech Demo 17 - JVM language calling native language:
    https://www.vajhoej.dk/arne/articles/vmstd17.html

    VMS Tech Demo 18 - getting data out of VMS:
    https://www.vajhoej.dk/arne/articles/vmstd18.html

    VMS Tech Demo 19 - getting data into VMS:
    https://www.vajhoej.dk/arne/articles/vmstd19.html

    VMS Tech Demo 20 - TIG (Transparent Interface Gateway):
    https://www.vajhoej.dk/arne/articles/vmstd20.html

    VMS Tech Demo 21 - data export with Spring Batch:
    https://www.vajhoej.dk/arne/articles/vmstd21.html

    VMS Tech Demo 22 - data import with Spring Batch:
    https://www.vajhoej.dk/arne/articles/vmstd22.html

    VMS Tech Demo 23 - Message Queue part 1:
    https://www.vajhoej.dk/arne/articles/vmstd23.html

    VMS Tech Demo 24 - Message Queue part 2:
    https://www.vajhoej.dk/arne/articles/vmstd24.html

    Database, index-sequential file, message queue,
    web services (SOAP and RESTful), web applications,
    data export, data import, callingh native
    code.

    It is all there.

    Arne

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Craig A. Berry@craigberry@nospam.mac.com to comp.os.vms on Wed Dec 17 07:19:02 2025
    From Newsgroup: comp.os.vms

    On 12/16/25 7:17 PM, Arne Vajh|+j wrote:
    On 12/16/2025 4:20 PM, Craig A. Berry wrote:
    Not sure the state of Ruby,

    I don't remember ever seeing MRI being ported to VMS.

    There was a port for Alpha 20 years ago:

    https://xiaotuanzi.github.io/vmsruby/en/index.html

    and an incomplete attempt to revive it 7 years ago:

    https://github.com/bg/vmsruby/commits/master/

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Sam Thomas@sam@noneya.com to comp.os.vms on Wed Dec 17 14:52:23 2025
    From Newsgroup: comp.os.vms

    Lawrence D?Oliveiro <ldo@nz.invalid> wrote:
    On Tue, 16 Dec 2025 17:38:47 -0000 (UTC), Sam Thomas wrote:

    I work in a big-ish Windows environment. GUI is used when necessary,
    and everything else is scripted. With PS. I'm a network engineer, so
    I use WSL2 and Linux VMs, but I don't really manage anything
    Windows.

    It is well-received amongst the Windows admins I'm surrounded by.
    Nobody is saying they wish they could just clicky-click several
    hundred times to do something that could go in a for loop. Most of
    our Windows VMs don't even have a GUI installed (datacenter
    edition).

    As to Arne's earlier question of PS adoption in Linux... Hell NO. PS
    runs counter to how *nix people think. It is bloated, excruciatingly
    verbose, and its "everything's an object" model breaks pipelining in
    the *nix paradigm. This doesn't even address the religious
    objections. No thank you.

    Let me see if I understand this: you have Windows-using colleagues who
    are fond of PowerShell, while you would avoid it like the plague for *nix-based workflows.

    Exactly. I assume if one wants to do scripting for Windows in a way
    that has reasonable access to system API in a MS-supported way, there
    is really only one choice. If I want to write for *nix, I have many,
    many choices.

    These same colleagues are using the ?Datacenter edition? of Windows
    Server. Worth pointing out that on-prem editions of Windows Server are
    no longer getting quite the same love from Microsoft as the cloud
    version. They are putting more effort into the cloud versions going
    forward.

    And the cloud is, of course, dominated by Linux. So the future of
    Windows Server here, too, seems a bit limited.

    I know we are moving some workloads to Linux, and especially to Docker/Kubernetes, but we have A LOT of workloads running
    on Windows server. I don't expect that to change. I'm just a
    humble network engineer. Most of that is not my problem(tm).

    Cheers,
    Sam
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From cross@cross@spitfire.i.gajendra.net (Dan Cross) to comp.os.vms on Wed Dec 17 16:55:35 2025
    From Newsgroup: comp.os.vms

    In article <10hsiel$329ui$1@dont-email.me>,
    Craig A. Berry <craigberry@nospam.mac.com> wrote:

    On 12/16/25 8:05 AM, Dan Cross wrote:
    In article <10h3upk$3f20l$1@dont-email.me>,
    Craig A. Berry <craigberry@nospam.mac.com> wrote:
    [...] But with people using scripting
    languages to process massive vectors to train LLM models, it all seems
    pretty puny.

    This is a good point, but, I sometimes wonder if, perhaps, we
    need to recalibrate what we mean when we say, "scripting
    language." I imagine that you are referring to Python here, as
    that seems to be the thing that the kids are all hip on these
    days when it comes to model training and such-like, but I think
    it's fair to say that that language has grown far beyond
    traditional "scripting" use.

    Python is interpreted, yes, but people who are using it to do
    numerical analysis are often using the jit-compiled variant, and
    more often the actual heavy computational lifting is being done
    in a library that's exposed to Python via an FFI; so the actual
    training code is in Fortran or C or some more traditional
    compiled language.

    Yes, of course. The scripting language will use a library (e.g., NumPy
    or PyTorch) that exposes interfaces to various kinds of hardware >acceleration. But eventually there is processed data returned that gets >manipulated using ordinary constructs of the calling language.

    Sure. But the point is that, at that point, those are the parts
    of the program that aren't (generally) performance-critical, or
    where the relatively slow performance of interpreted Python
    isn't a serious impedement, for one reason or another. Consider
    writing that data to a file, for example; most of that is going
    to be blocked on IO, not the interpreter.

    My
    comment arose in the context of DCL and Arne's suggestion of a new
    wrapper language around DCL supplying new features; if any of those new >features tries to put more than 8192 bytes into a DCL symbol, that ain't >gonna work. And the same would be true for a new lexical function in
    current DCL.

    That's fair, and I completely agree with you. I apologize, as I
    realize I'm just quibbling over what one calls a "scripting
    language," which entirely irrelevant to the topic at hand.

    There is, evidently, a need (or at least desire) for a really
    good interpreted language to script various system management
    tasks; I gather folks feel that DCL is a bit long in the tooth
    and insufficient for that. As I mentioned before, I feel like
    that is qualitatively different than using DCL as an interactive
    CLI; perhaps the solution here is just to build out a really
    nice set of officially supported modules for, say, Python (or a
    similar suitable language) and call it a day.

    Python, Perl, and Lua all exist. Probably all could use additional work
    for VMS-specific administrative tasks. Not sure the state of Ruby, but
    there is JRuby. And at least a couple of other JVM-based scripting
    options. So it's not like people are struggling between DCL and nothing.

    In a way I agree with you that a good scripting language should not have
    to be a good CLI and vice versa. But there is an important category of >script that starts off as one long command, gets split into two or more >commands, wrapped in a loop, parameterized for different inputs, put in
    a subroutine, and has features added like e-mailing the output to a >distribution list. Now you've got a program, and there is no obvious
    point in that process where it's free or easy to switch languages.

    This is why I pointed at REXX on z/VM as an interesting example
    of a system that, I think, does well in this area. The actual
    "command interpreter" in CMS, as it is, is pretty anemic, but
    ignoring EXEC2, essentially all scripts are written in REXX,
    which is a real language. But its "enviornments" concept makes
    it syntactically very easy to send commands to CMS or XEDIT in
    that world.

    Not that I'm suggesting that VSI adopt REXX for VMS, but rather
    just pointing it out as an interesting example of a system in
    this space that works remarkably well.

    On a slightly humorous note, I've heard folks say that once you
    get the point where your shell script exceeds ~10 lines, or more
    than a single conditional, or you start to entertain the idea of
    using a loop at all (other than simply over the arguments to the
    script), it's time to reach for a Real language.

    So while it's certainly not the only paradigm for writing scripts, it's
    darn convenient to have a CLI that can also function as a decent
    programming language. DCL would have fit the bill 30 years ago but now
    not so much. Thus the discussion about enhancing or replacing DCL.

    Yeah, I hear you on that.

    I also keep thinking about Tcl, which Ousterhout imaged as both
    a command language for interactive use and a scripting language.

    It was really designed for interactive tools with captive user
    interfaces; imagine the `ftp` or `telnet` clients, for example.
    In the 1980s when Tcl was being developed, programs like these
    frequently had a kind of janky ersatz command interpreter built
    in and some amount of configurability via reading a file
    (`.telnetrc`, for example), but it was always idiosyncratic and
    weird.

    But what if the interface for the tool was constructed from a
    proper language? It's an interesting idea, but presumes tight
    coupling with whatever program it is embedded in, thus not
    really suited for use as a "shell".

    I don't think it was as well thought-through as REXX in the VM
    world, critically lacking the "environment" concept, but it's
    another interesting point in the design space.
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From cross@cross@spitfire.i.gajendra.net (Dan Cross) to comp.os.vms on Wed Dec 17 16:57:49 2025
    From Newsgroup: comp.os.vms

    In article <10ht0rk$34qt0$2@dont-email.me>,
    Arne Vajh|+j <arne@vajhoej.dk> wrote:
    On 12/16/2025 9:05 AM, Dan Cross wrote:
    In article <10h3upk$3f20l$1@dont-email.me>,
    Craig A. Berry <craigberry@nospam.mac.com> wrote:
    [...] But with people using scripting
    languages to process massive vectors to train LLM models, it all seems
    pretty puny.

    This is a good point, but, I sometimes wonder if, perhaps, we
    need to recalibrate what we mean when we say, "scripting
    language." I imagine that you are referring to Python here, as
    that seems to be the thing that the kids are all hip on these
    days when it comes to model training and such-like, but I think
    it's fair to say that that language has grown far beyond
    traditional "scripting" use.

    ML, data processing and web has certainly passed admin
    scripting in usage.

    Yup.

    Python is interpreted, yes, but people who are using it to do
    numerical analysis are often using the jit-compiled variant,

    Most still use CPython.

    In your world of enterprise IT? Sure.

    For numerical analysis? Directly in Python? No.

    None of the JIT implementations PyPy, GraalPy, Codon etc. has
    really gotten traction.

    (CPython 3.13+ actually comes with JIT, but it does not provide
    the same speedup as PyPy and GraalPy can for those CPU intensive
    cases that should never be done in Python)

    Reason: fear of compatibility issues combined with the fact that
    JIT usually does not matter.

    Because:

    and
    more often the actual heavy computational lifting is being done
    in a library that's exposed to Python via an FFI; so the actual
    training code is in Fortran or C or some more traditional
    compiled language.

    If CPython interpretation use 0.1-1.0% of total CPU usage
    and native library execution use 99.0-99.9% of total CPU usage,
    then ...

    See above. I'm talking about software that's doing numerical
    analysis directly in Python, _not_ via FFI.

    - Dan C.
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From =?UTF-8?Q?Arne_Vajh=C3=B8j?=@arne@vajhoej.dk to comp.os.vms on Wed Dec 17 20:34:23 2025
    From Newsgroup: comp.os.vms

    On 12/17/2025 9:52 AM, Sam Thomas wrote:
    Lawrence D?Oliveiro <ldo@nz.invalid> wrote:
    Let me see if I understand this: you have Windows-using colleagues who
    are fond of PowerShell, while you would avoid it like the plague for
    *nix-based workflows.

    Exactly. I assume if one wants to do scripting for Windows in a way
    that has reasonable access to system API in a MS-supported way, there
    is really only one choice.

    Yes.

    VBScript is:
    * 30 years old
    * deprecated and scheduled for removal in future Windows version
    * only works with stuff that expose a COM API

    So in a modified version of a famous quote: a Windows admin
    can use any shell as long as the shell is PowerShell.

    :-)

    Arne

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From =?UTF-8?Q?Arne_Vajh=C3=B8j?=@arne@vajhoej.dk to comp.os.vms on Wed Dec 17 20:45:15 2025
    From Newsgroup: comp.os.vms

    On 12/17/2025 11:57 AM, Dan Cross wrote:
    In article <10ht0rk$34qt0$2@dont-email.me>,
    Arne Vajh|+j <arne@vajhoej.dk> wrote:
    On 12/16/2025 9:05 AM, Dan Cross wrote:
    Python is interpreted, yes, but people who are using it to do
    numerical analysis are often using the jit-compiled variant,

    Most still use CPython.

    In your world of enterprise IT? Sure.

    For numerical analysis? Directly in Python? No.

    None of the JIT implementations PyPy, GraalPy, Codon etc. has
    really gotten traction.

    Reason: fear of compatibility issues combined with the fact that
    JIT usually does not matter.

    Because:

    and
    more often the actual heavy computational lifting is being done
    in a library that's exposed to Python via an FFI; so the actual
    training code is in Fortran or C or some more traditional
    compiled language.

    If CPython interpretation use 0.1-1.0% of total CPU usage
    and native library execution use 99.0-99.9% of total CPU usage,
    then ...

    See above. I'm talking about software that's doing numerical
    analysis directly in Python, _not_ via FFI.

    But practically nobody does that.

    By using the high level packages (pandas, polars,
    tensorflow, pytorch, numpy, scipy etc.) they can
    do what they need to do using much higher level
    constructs. No need to fiddle with LAPACK, BLAS,
    matrix multiplication and inversion algorithms.

    And on top of having to deal with much less
    much higher level code they get way better
    performance. The standard libraries are
    much faster than custom Python code even
    if it is JIT compiled.

    Nobody want to write 5-10 times more lines
    of code to run 5-10 times slower.

    Arne


    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Lawrence =?iso-8859-13?q?D=FFOliveiro?=@ldo@nz.invalid to comp.os.vms on Thu Dec 18 02:31:12 2025
    From Newsgroup: comp.os.vms

    On Wed, 17 Dec 2025 20:34:23 -0500, Arne Vajh|+j wrote:

    VBScript is:
    * 30 years old
    * deprecated and scheduled for removal in future Windows version
    * only works with stuff that expose a COM API

    Are you talking about VBA?
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From =?UTF-8?Q?Arne_Vajh=C3=B8j?=@arne@vajhoej.dk to comp.os.vms on Wed Dec 17 21:40:26 2025
    From Newsgroup: comp.os.vms

    On 12/17/2025 9:31 PM, Lawrence DrCOOliveiro wrote:
    On Wed, 17 Dec 2025 20:34:23 -0500, Arne Vajh|+j wrote:
    VBScript is:
    * 30 years old
    * deprecated and scheduled for removal in future Windows version
    * only works with stuff that expose a COM API

    Are you talking about VBA?

    No. VBScript aka VBS.

    VBScript, VBA and VB share a lot of syntax, but are
    different technically and used for different things.

    VBA is used for embedded scripts in MS Office applications.
    And it is typed and able to use both COM and Win32 DLL's.

    VBS is used as windows scripting language and as language
    in ASP classic web pages. It is not typed and can only
    use COM DLL's (assuming the COM component implements
    IDispatch).

    Arne

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From =?UTF-8?Q?Arne_Vajh=C3=B8j?=@arne@vajhoej.dk to comp.os.vms on Thu Dec 18 09:44:33 2025
    From Newsgroup: comp.os.vms

    On 12/16/2025 8:17 PM, Arne Vajh|+j wrote:
    On 12/16/2025 4:20 PM, Craig A. Berry wrote:
    there is JRuby.

    Yes.

    It was ported to VMS in the past.

    And a recent version can build code on PC and run code on VMS.

    And just to clarify.

    Interpret on VMS works:

    $ java -cp jruby.jar "org.jruby.Main" whatever.rb

    But compile of .rb to .class file does not work
    on VMS, so for that it is compile on PC and move
    to VMS and run there.

    Arne



    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From =?UTF-8?Q?Arne_Vajh=C3=B8j?=@arne@vajhoej.dk to comp.os.vms on Thu Dec 18 09:46:14 2025
    From Newsgroup: comp.os.vms

    On 12/17/2025 8:19 AM, Craig A. Berry wrote:
    On 12/16/25 7:17 PM, Arne Vajh|+j wrote:
    On 12/16/2025 4:20 PM, Craig A. Berry wrote:
    -aNot sure the state of Ruby,

    I don't remember ever seeing MRI being ported to VMS.

    There was a port for Alpha 20 years ago:

    https://xiaotuanzi.github.io/vmsruby/en/index.html

    and an incomplete attempt to revive it 7 years ago:

    https://github.com/bg/vmsruby/commits/master/

    I have missed that.

    A lot of interesting projects get started on VMS.

    But too few of them survive.

    Arne

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From cross@cross@spitfire.i.gajendra.net (Dan Cross) to comp.os.vms on Thu Dec 18 15:03:57 2025
    From Newsgroup: comp.os.vms

    In article <10hvmbb$3uroi$2@dont-email.me>,
    Arne Vajh|+j <arne@vajhoej.dk> wrote:
    On 12/17/2025 11:57 AM, Dan Cross wrote:
    In article <10ht0rk$34qt0$2@dont-email.me>,
    Arne Vajh|+j <arne@vajhoej.dk> wrote:
    On 12/16/2025 9:05 AM, Dan Cross wrote:
    Python is interpreted, yes, but people who are using it to do
    numerical analysis are often using the jit-compiled variant,

    Most still use CPython.

    In your world of enterprise IT? Sure.

    For numerical analysis? Directly in Python? No.

    None of the JIT implementations PyPy, GraalPy, Codon etc. has
    really gotten traction.

    Reason: fear of compatibility issues combined with the fact that
    JIT usually does not matter.

    Because:

    and
    more often the actual heavy computational lifting is being done
    in a library that's exposed to Python via an FFI; so the actual
    training code is in Fortran or C or some more traditional
    compiled language.

    If CPython interpretation use 0.1-1.0% of total CPU usage
    and native library execution use 99.0-99.9% of total CPU usage,
    then ...

    See above. I'm talking about software that's doing numerical
    analysis directly in Python, _not_ via FFI.

    But practically nobody does that.

    I haven't seen any evidence that suggests you are really in a
    position to know that one way or the other. On the other hand,
    I have direct, first-hand knowledge of people who are doing
    just that.

    By using the high level packages (pandas, polars,
    tensorflow, pytorch, numpy, scipy etc.) they can
    do what they need to do using much higher level
    constructs. No need to fiddle with LAPACK, BLAS,
    matrix multiplication and inversion algorithms.

    And on top of having to deal with much less
    much higher level code they get way better
    performance. The standard libraries are
    much faster than custom Python code even
    if it is JIT compiled.

    Nobody want to write 5-10 times more lines
    of code to run 5-10 times slower.

    Sorry, but if you want to make a statement about some aspect of
    the field that you just aren't involved in, you really need some
    evidence to back it up, not just your intuition.

    - Dan C.

    --- Synchronet 3.21a-Linux NewsLink 1.2