Gary
Yes, APL should be a proscribed for people with a weakness to addiction. I
rashly learned APL in 1973 and got an opportunity to indulge myself a couple
of years later. I wrote what would today be a spreadsheet program as a
collection of APL functions. The problem was that printing it on a 2741-like
typewriter with initials CMC - I think - was a bit slow. My imagination now
plunged me into the APL "black hole" as I realised how I could improve the
printing time by a small amount. Here was an opportunity to write a really
tricky APL function - and without branching logic so that it could be
converted into a single line of symbols. The function was to create a
character string with tab and new line characters from a two-dimensional
array representing the page to be printed and a list of tab stops.
Finally, it worked and I had reached the summit of a Mount Everest of
programming ingenuity!
As you hinted, the guy who needed to maintain the suite of functions gave me
an earful over the phone some time after I had left about this function
there was no way he was going to get his head around[1]. I assured him it
was optional and if it didn't work, he could just leave it out and add 5 to
10% to the report page printing time. I think he was too incensed for me to
offer the theoretical opinion that something that complicated which had been
reduced to demonstrably nonbranching logic just had to be free of any
possibility of having a logic error.
I believe I did point out in addition that it was all a bit of a waste of
time since the possibility to improve printing times by using tabs was going
to be a feature in the next release of VM APL and it was about to be
shipped! Maybe some will remember the feature and when it was introduced.
Like you I've been in remission ever since.
Chris Mason
[1] He didn't mind the rest which I had actually made some efforts to be
reasonably self-documenting and which actually consisted of fairly
straightforward logic - with just one APL operator per line probably.
----- Original Message -----
From: "Gary Green" <[EMAIL PROTECTED]>
Newsgroups: bit.listserv.ibm-main
To: <IBM-MAIN@BAMA.UA.EDU>
Sent: Wednesday, May 23, 2007 7:50 PM
Subject: Re: Non-Standard Mainframe Language?
D'oh! I never thought about his background being in UNIX...
Never mind...
I tried APL once, back in 77. I thought it was the perfect programming
language. One could write an entire program on/in one line of code. And,
the part I liked best, no one could understand it and it "looked" like a
computer programming language.
I've since grown up. <g>
On Wed May 23 12:00 , 'McKown, John' <[EMAIL PROTECTED]> sent:
-----Original Message-----
From: IBM Mainframe Discussion List
[EMAIL PROTECTED]','','','')">[EMAIL PROTECTED] On Behalf Of
Gary Green
Sent: Wednesday, May 23, 2007 11:48 AM
To: IBM-MAIN@BAMA.UA.EDU
Subject: Non-Standard Mainframe Language?
Am I missing something here?
The below is an excerpt from a blog where the writer lamented
that the ubiquitous language "C" was available
everywhere, for free, except for the mainframe. And then
rejoices that it finally came to the mainframe...
Okay, that part I get. The part that interests me is since
"C" was not available, 'mainframe users could have been in a
position of having to write code in a "non-standard"
language...' A language like what...? Cobol per chance...
Maybe assembler?
As I started this, am I missing something here?
Inquiring minds want to know.
Personal opinion time. In the environment which the author works
(apparently UNIX), C is the defacto "standard language". We, as
mainframers, could lament that there is no free COBOL on UNIX or
Windows. We would have a strong argument that COBOL is the true standard
language for COMMERCIAL programming. But the author, coming from his
UNIX environment, assumes that z/OS should likewise consider C to be the
defacto standard language. Now that z/OS has an integrated UNIX
environment, he may have some good points. In order to use much of the
freely available UNIX source code, a C compiler is totally required. But
I think he is being parochial or chauvinistic to basically say "C is the
standard language in my environment, so it should be the standard
language in every other environment."
Now, you want a non standard language? Try writing in APL2!
--
John McKown
Senior Systems Programmer
HealthMarkets
Keeping the Promise of Affordable Coverage
Administrative Services Group
Information Technology
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html