I found the article to be clear. Unfortunately, it is also wrong, and I've 
added a comment to the talk page.

Shmuel (Seymour J.) Metz

From: IBM Mainframe Assembler List <ASSEMBLER-LIST@listserv.uga.edu> on behalf 
of Richard Kuebbing <rkueb...@tsys.com>
Sent: Friday, February 9, 2018 4:34 PM
To: ASSEMBLER-LIST@listserv.uga.edu
Subject: Re: Man or boy test

I read this wiki entry 
 and it is clear as mud.  I think I have led a sheltered life.

As an aside, I followed the OOP discussion.  The session manager (TPX) I worked 
on had a kind of OOP.  It had a stack for each thread, the htreads were 
interruptible (conversational), you pushed objects onto the stack, methods used 
the stack to evaluate a host of variables (originaly about 1000, later over 
2000), the opsys storage was the zero level of the stack, each task was a 
server sending and receiving messages from everyone, including VTAM via exits, 
there was a timer task used for scheduling....  And it was easier programming 
that in assembler than CICS using Cobol.

It had a client server piece in the form of an emulator.  It had the potential 
of being a pipeline between the host and the client.  But noone had to 
foresight to allow it.  And then we were bought by CA.

Intense nostalgia.

-----Original Message-----
From: IBM Mainframe Assembler List [mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU] On 
Behalf Of Charles Mills
Sent: Friday, February 09, 2018 4:23 PM
Subject: Re: Man or boy test

As I understand it, call-by-name means the following:

Suppose for example if you coded a subroutine that expected some sort of 
parameter, and called it with a random number function, the random number 
function would (in most languages) get evaluated once before your subroutine 
was called, and your subroutine would see it as a constant. If you printed it 
three times in a loop it would be the same all three times.

With call-by-name, 'RAND()' (or whatever) would not get evaluated by the caller 
but rather passed to your subroutine "as-is." It would get evaluated whenever 
your subroutine referenced it. If you printed it three times in a loop you 
would get three different values.

It's not really "call by name" but rather "call with function" as opposed to 
"call with value of function."


----------------------------------------- The information contained in this 
communication (including any attachments hereto) is confidential and is 
intended solely for the personal and confidential use of the individual or 
entity to whom it is addressed. The information may also constitute a legally 
privileged confidential communication. If the reader of this message is not the 
intended recipient or an agent responsible for delivering it to the intended 
recipient, you are hereby notified that you have received this communication in 
error and that any review, dissemination, copying, or unauthorized use of this 
information, or the taking of any action in reliance on the contents of this 
information is strictly prohibited. If you have received this communication in 
error, please notify us immediately by e-mail, and delete the original message. 
Thank you

Reply via email to