[Info-vax] VMS documentation, was: Re: Special deals on Tape Drives
Bill Gunshannon
bill.gunshannon at gmail.com
Mon Mar 14 12:45:16 EDT 2022
On 3/14/22 10:03, Simon Clubley wrote:
> On 2022-03-13, VAXman- @SendSpamHere.ORG <VAXman- at SendSpamHere.ORG> wrote:
>> In article <622cf1b9$0$703$14726298 at news.sunsite.dk>, =?UTF-8?Q?Arne_Vajh=c3=b8j?= <arne at vajhoej.dk> writes:
>>> On 3/12/2022 1:53 PM, Simon Clubley wrote:
>>>> I don't know what Bill found to be confusing, but I can see some people
>>>> being confused by all the VMS-specific stuff such as a way over-complex
>>>> descriptor system,
>>>
>>> The use of descriptors is hidden for those programming in enough high
>>> level languages: Pascal, Fortran, Cobol, Basic etc.. It can hardly
>>> get any simpler than that.
>>>
>>> Those programming in and Macro-32 need to know that they are sending
>>> over type, length and address. Not particular complex. If they can't
>>> grasp that concept then I don't think they will get far on those
>>> languages.
>>
>> CLRL -(SP) ;dynamic; dsc$a_pointer
>> PUSHL #<DSC$K_CLASS_D@<DSC$B_CLASS at TOBITS>>!- ; dsc$b_class
>> <DSC$K_DTYPE_T@<DSC$B_DTYPE at TOBITS>> ; dsc$b_type
>>
>> I just build dynamic descriptors on the stack and let VMS allocate for
>> me the storage for the data.
>>
>
> And you sound exactly like the experienced z/OS programmer used to
> doing things in z/OS assembly language and wondering why newcomers
> to z/OS can't just do the same thing.
>
>>
>>
>>> OK. There is an ugly side to descriptors - when one goes outside
>>> simple fixed length or variable length strings, then it can become
>>> tricky. But that is extremely rare and usually only happens
>>> for some advanced language interop problems.
>>
>> There a uniform definition for myriad generic structures that descriptors
>> entail beyond simple strings, but Simon just likes to hear himself bitch
>> and believes we want to as well.
>>
>
> Tell me Brian, am I living rent-free in your head ? :-)
>
> It certainly sounds like it...
>
>>
>>
>>>> as well as the fact the documentation needs to be
>>>> written at a lower level than with the Unix documentation to deal with
>>>> all the exposed structures that in Unix are hidden behind call interfaces,
>>>> C structs, etc.
>>>
>>> There is nothing low level in sending over complex structures instead
>>> of simple data types. Almost all modern API's does that (it is just
>>> called an object!).
>>
>> ;)
>>
>> Simon isn't happy unless it's littered with lots of "squigglies", typedefs,
>> and other C eunuchisms.
>>
>
> You mean the stuff that abstracts away implementation details so that
> you can write portable code that you can more easily move between
> architectures and different bit sized environments without having to
> rewrite the whole thing ? :-)
Ah... There's the rub...
It seems that VMS people want to continue to live in the 70's where
job security meant writing code that could not be easily understood
and certainly couldn't be moved (easily or otherwise) to a different
architecture or even OS.
bill
More information about the Info-vax
mailing list