The two values are the address of a thunk and the stack frame of the caller. 
You could pass two thunks and the stack frame, but you can't just pass the 
thunks.


--
Shmuel (Seymour J.) Metz
http://mason.gmu.edu/~smetz3

________________________________________
From: IBM Mainframe Assembler List <ASSEMBLER-LIST@listserv.uga.edu> on behalf 
of Martin Ward <mar...@gkc.org.uk>
Sent: Tuesday, February 13, 2018 3:18 PM
To: ASSEMBLER-LIST@listserv.uga.edu
Subject: Re: Call by name

On 13/02/18 17:09, Seymour J Metz wrote:
> Something just occurred to me with regard to call by name. There are
> no SETS and USES  attributes in an Algol 60 parameter declaration. If
> a parameter is used as an l-value, there is a potential problem. A
> value like A[I] is legitimate on either side of an assignment, but a
> value like A[I]+1 is valid only on the right.

Someone on this list that the implementation of call by name would
pass two functions (addresses of blocks of code): one which computed
the value of the parameter in the caller's environment
and the other computed the address to store a value.
For a parameter like A[I]+1 which cannot be assigned to,
the second function would cause a runtime error.

--
                        Martin

Dr Martin Ward | Email: mar...@gkc.org.uk | 
http://secure-web.cisco.com/1_96WMagZOzrP5aCigoyOwA5LtekIj_6QFcDq_TtjLSBpZV2JdXsBsiXPrYFYqjhEprYpPXumCjWJzJGX8XvbDxudc3KneyptarH7migLfCGdPPJsPtcW4LzIJHyRApMCZlch8pTLYBaNtNwUZ5hVNjegWa9Nw_O8BAnyeVGwRStQ-0YiS5oBtwdKs19Z13Bu1KvqMOgCZjpjJisD4aBb3Xgsbhce_oZutpsRn3tzhOUj_xFxibc0PrRf79qn13Gh9G8RVXZICVMY8SWYs3cBFlh06mnkGhnS4xdBHOTL8mRTeZTHa7Zefiuyh7Kf9TyXgFXMsTKJQ93oEH5tYFNZvqyi4X1dWDtBo1vXLZE75Gco6PlDV7SAmGiS4EWg5jT2I5wL6_f8d7lM_FJJOc9lt7hA6nx5_JMoOV6wPNiUvSnXStmMf1swKo5nGc8SJI0D/http%3A%2F%2Fwww.gkc.org.uk
G.K.Chesterton site: 
http://secure-web.cisco.com/1v3M4w3ZxL6Vm5ONON2Ior4tWGASAybTQkbaszHKfEVrERflfJn-A4_Vb2oRa5hWkiRbBb4OX_O1CEvo_UCh46RQx73CNcVybBjwiDJD4SOk5PYklGkMi1kGjaRb5vu6C1k8-SbJDekH0Y_xjS1xPt7IPe_nRoTwwwoUGOh7c6tDjGZ2mbg13jyGHuiiEoAzoOZksUFHVZmzde-Rw-EYmYtLEQ5oDQBDM6dwxbKyNwzJGfqmrOlw0D7GTLEsY4Bringl3apXKHYWpT22lW4mYknT4Ha03pVYS9zxvv-WeZr_lc_OVXr8QqtUFBzCDTUdVMVgk3_C4NsPl0aSVFfEMY9MOf23n8ZsXhHGHCZCThMUztXymrQzA013jmwtigdTeDSyRiyiZiunBRdi5B6NNh5RylT62Ph7fXCjxpcIfjo1XN5MK1wklvnl5hLjTh6QQ/http%3A%2F%2Fwww.gkc.org.uk%2Fgkc
 | Erdos number: 4

Reply via email to