Re: HL:ASM native UNIX support

2012-01-02 Thread John Gilmore
John McKown wrote:

| One thing which is a bit frustrating is that my macros,
| even if in a UNIX file, must be kept in UPPER case.

Only the NAMES of your macros need be.  The text of macro definitions
can be mixed-case.

Under the covers z/OS UNIX libraries are PDSEs, and PDSE member names
are limited to eight characters---majuscules, numerics and @|#|$---the
first of which cannot be numeric.

The syntax  of aliases for these names, including that of the UNIX
principal alias, is much more relaxed.  In a UNIX environment It might
therefore be possible to induce the HLASM to create an eight-character
mangled name from a longer macro name, use it as the member name and
supply the longer name as a principal alias.  This, as I'm sure you
know, it what some C compilers do to address the same problem.

John Gilmore, Ashland, MA 01721 - USA


Re: HL:ASM native UNIX support

2012-01-02 Thread John McKown
On Mon, 2012-01-02 at 19:08 -0500, John Gilmore wrote:
 John McKown wrote:

 | One thing which is a bit frustrating is that my macros,
 | even if in a UNIX file, must be kept in UPPER case.

 Only the NAMES of your macros need be.  The text of macro definitions
 can be mixed-case.

Yes, I meant the NAMES. I should have been more precise.


 Under the covers z/OS UNIX libraries are PDSEs, and PDSE member names
 are limited to eight characters---majuscules, numerics and @|#|$---the
 first of which cannot be numeric.

I don't know what you mean by z/OS UNIX libraries. Do you mean archive
libraries, as maintained by the ar command? I didn't mean them. I keep
the macros for my UNIX project as regular UNIX files in a UNIX
subdirectory. I believe that HLASM (the as command?) currently
concatenates them to the SYSLIB DD and just uses standard BPAM (and its
support for a UNIX subdirectory as if it were a PDS, kinda, sorta).

I had heard that the deprecated HFS filesystem was based on PDSE code.
But all the filesystems at work are in the currently recommended zFS
filesystems (VSAM Linear) format.


 The syntax  of aliases for these names, including that of the UNIX
 principal alias, is much more relaxed.  In a UNIX environment It might
 therefore be possible to induce the HLASM to create an eight-character
 mangled name from a longer macro name, use it as the member name and
 supply the longer name as a principal alias.  This, as I'm sure you
 know, it what some C compilers do to address the same problem.

I don't have a C license, so I've not looked at how the C compiler on
z/OS works. I am aware that there exists a /usr/include subdirectory
supplied with z/OS which contains a lot of files ending in .h. This is
similar to what I am familiar with on my Linux system. I am also aware
that there are a bunch of PDSes that contains members which I guess are
used for batch C compiles.


 John Gilmore, Ashland, MA 01721 - USA

What I would wish for is to have HLASM be able to use UNIX facilities
directly to read UNIX resident code as well as support copy names and
macro names  8 characters for UNIX resident source. And I do realize
that this this unlikely due to lack of need on the part of IBM
internally (little HLASM development any more) and likely resistance by
customers to the cost (cost  benefit).

--
John McKown
Maranatha! 


Re: HL:ASM native UNIX support

2012-01-02 Thread Paul Gilmartin
On Jan 2, 2012, at 17:08, John Gilmore wrote:

 Under the covers z/OS UNIX libraries are PDSEs, and PDSE member names
 are limited to eight characters---majuscules, numerics and @|#|$---the
 first of which cannot be numeric.

No.

-- gil