Newsgroups: comp.lang.apl
Path: watmath!watserv1!70530.1226@compuserve.com
From: Mike Kent <70530.1226@CompuServe.COM>
Subject: Re: APL slash bang (Repost)
Message-ID: <920327075654_70530.1226_CHC88-1@CompuServe.COM>
Sender: root@watserv1.waterloo.edu (Operator)
Organization: University of Waterloo
Date: Fri, 27 Mar 1992 07:56:55 GMT
Lines: 41

In article <1992Mar24.161512.25828@yrloc.ipsa.reuter.COM>,
rbe@yrloc.ipa.reuter.com (Robert Bernecky) writes

 > ... the definition of reduction differs between SHARP APL and APL2
 > (and I think, between APL*PLUS and APl2 [sic], but ain't sure).

Reduction is in theory the same in APL2 and APL*PLUS.  I have seen
differences in the result of   f/   (using both off and on since 1981)
only when the semantics of   f   differ between the dialects.  As STSC has
taken conformance with APL2 as a stated direction, I would expect these
differences (which are ina any case related to the function operand
rather than to the operator) to disappear in the fullness of time.

 = = = = = = = =

In article <1992Mar25.151335.6536@yrloc.ipsa.reuter.COM> he writes:

 > IBM APL2 has something similar to []fi, which I believe is implemented
 > usnig []na, as a distributed utility.

Main frame APL2 has an external function (accessed via []na) called, as I
recall, ATN.  It is _somewhat_ similar to []fi; the mmain diffference is
that it attempts (and fails, IMO) to incorporate part of the functionality
of []vi as well.  When all the (blank-delimited) substrings of a string S
are valid representations of numbers, it is the same as   []fi S    (or
execute S), but when at least one substring in not convertible (i.e., when
[]vi S    contains at least one 0), the result is either empty or 0, I
forget which.  The problem with this is that the error result cannot be
used to locate the offending substring(s); first you have to detect that
the conversion failed -- the result is not a _good_ conversion of a limit
case -- and _then_ you have to emulate []vi to figure out where the
offfending substring(s) is/are.   When I was at Shearson Lehman Brothers,
we used defined functions which emulated []vi and []fi to do the
conversions; they were based on the algorithms published in Quote Quad
around 1981 for "conversion of numeric input" and "validation of numeric
input".  BTW, if anyone wants to dig out their old QQs to implement these
locally, be warned that the initial publication of at least the []fi
emulator had errors which were corrected one or two issues later.



