What's past is prologue.  There are historic reasons why, for example,

|&termc    setc  '-201'
|&terma    seta  &termc

sets &terma NOT to  arithmetic -201 but to arithmetic +201.  If you
want to preserve algebraic values you must use the D2A and A2D bifs or
RYO.  This is counter-intuitive if you do not know the history, but
low-level changes in the behavior of the HLASM to make it more
'reasonable' would break many, a great many, existing routines.

The bifs address these anomalies well, and with a bit more experience
with set-symbol arithmetic you will use them instinctually.  Your cat
brain will do the work.

My complaint about arithmetic set symbols is that we cannot yet do
doubleword arithmetic with them.  I have some homegrown SETAF
facilities that do it well enough, but multiple-precision arithmetic
is opaque.  I have visions of being exhumed to maintain them.

Happy American Turkey Day!

John Gilmore,   Ashland, MA 01721 - USA

On 11/24/11, Binyamin Dissen <[email protected]> wrote:
> On Thu, 24 Nov 2011 16:23:56 -0500 John Gilmore <[email protected]>
> wrote:
>
> :>The assembler is behaving correctly for the macro instruction
>
> :>|          MCGUFFIN A=QWERT
>
> :>The D2A bif accepts only
>
> :><D2A input> ::= <signed dstring> | <dstring>
> :><dstring> ::= <dstring><digit> | <digit>
> :><digit> ::= 0|1|2|3|4|5|6|7|8|9
> :><signed dstring> ::= <sign> <dstring>
> :><sign> ::= + | -
>
> Thus D2A is not a proper substitute for T'
>
> :>If you want bullet proofing you will have to write it.
>
> That was the annoyance. I would have expected that T' would properly handle
> a
> signed number.
>
> --
> Binyamin Dissen <[email protected]>
> http://www.dissensoftware.com
>
> Director, Dissen Software, Bar & Grill - Israel
>
>
> Should you use the mailblocks package and expect a response from me,
> you should preauthorize the dissensoftware.com domain.
>
> I very rarely bother responding to challenge/response systems,
> especially those from irresponsible companies.
>


--
John Gilmore, Ashland, MA 01721 - USA

Reply via email to