[Info-vax] Access to _all_ VMS system services and library functions from DCL ?

David Froble davef at tsoft-inc.com
Tue Jul 11 22:19:35 EDT 2017


Simon Clubley wrote:
> On 2017-07-10, David Froble <davef at tsoft-inc.com> wrote:
>> Well, not just for DCL.  Have defined blocks of data for each system service. 
>> Either I allocate the memory, (probably best) or have the system service 
>> allocate the memory.  Then jam it full of all data provided by that system 
>> service.  Sure would do away with item lists, at least to some extent.
>>
> 
> A single block of data which is directly accessed is too limiting and
> will cause massive maintainence problems as structures are changed and
> field sizes changed in the future.

Why?

> This will lead to a different version of the data block for every
> change in the future and all these versions would have to be kept
> around in the future as well as the code to populate them.

Why?

> There is a strong argument for an easier than currently exists method
> to get at this data, but there still needs to be some level of abstraction
> in order to be able to handle these issues.

I thought what I suggested was rather abstract.

> Oh, and for something like this, if it was done anyway, there's no way
> you should pass in the memory to be used. For a structure this complex,
> VMS would need to control the memory it was writing to for safety reasons
> and that means it allocates the memory and returns a pointer to it.

As I mentioned, it could be done either way.  I believe that the option of 
including the data block definition into a program and then passing the data 
block to be populated is a valid method.  If I passed it by Descriptor, the SS 
could validate the size and such.

>> If I can "include" the data structure in my programs, and then reference the 
>> data by name, sure would make things simpler.
> 
> And what about when the data block is changed because a field is
> expanded (for example) ?

This is something VSI should be able to do.  Modify the data block as required. 
  That would include different field sizes.

I haven't given this a tremendous amount of thought.  Just some thoughts I've 
had.  Any implementation would of course require much more study and design 
work.  Got to prevent nefarious activity.



More information about the Info-vax mailing list