[Info-vax] Access to _all_ VMS system services and library functions from DCL ?
Arne Vajhøj
arne at vajhoej.dk
Sun Jul 9 20:09:45 EDT 2017
On 7/9/2017 7:59 PM, Craig A. Berry wrote:
> On 7/8/17 8:39 PM, Arne Vajhøj wrote:
>> On 7/8/2017 4:09 PM, Simon Clubley wrote:
>>> On 2017-07-07, Arne Vajhøj <arne at vajhoej.dk> wrote:
>>>> On 4/4/2017 2:21 PM, Simon Clubley wrote:
>>>>> As mentioned in my original post, some aspects might be challenging
>>>>> in DCL as it stands today. For example, how do you marshall an
>>>>> itemlist as seen by DCL into an itemlist directly usable by VMS ?
>>>> It requires some tweaking, but it is possible.
> It's very nice that Javascript can do this sort of thing on VMS. I
> assume anything based on the JVM could do something similar?
Yes.
I would actually have preferred to use Jython (JVM Python), but
I had problems getting it to run, so I ended up using JavaScript.
But the Jython problems could probably be sorted out. JRuby and
Groovy are other options.
> I have to say, though, that this is very low-level and frankly looks
> like a lot of work. Dealing with item lists in something called a
> scripting language doesn't really appeal to me. This can of course be
> solved by writing wrapper code, which other languages have already done.
> So why not just use DCL or various other solutions so that you do not
> have to construct item lists in order to retrieve an item available from
> $GETJPI?
I only showed the item list example to demonstrate that it could be done.
>> Original version was primarily to show item lists working:...
>> $ type itmlst3.js
>> load("vms.js");
>>
>> var res = syssrv.SYS$GETJPIW(0,["PID","USERNAME"]);
>> var sts = res.getStatus();
>> var pinfo = res.getResult();
>> printf("sts=%.0f pid=%.0f usrnam=%s\n", sts, pinfo.PID, pinfo.USERNAME);
This is the version that I think would be used.
Maybe it can be further improved, but that is where I am now.
Yes - wrapper code need to be written. But it is not so much -
5-20 lines of code per function.
And because it is reusable from multiple languages then
I think it is a decent investment.
Arne
More information about the Info-vax
mailing list