home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!zaphod.mps.ohio-state.edu!caen!destroyer!cs.ubc.ca!columbia.cs.ubc.ca!not-for-mail
- From: manis@cs.ubc.ca (Vincent Manis)
- Newsgroups: comp.lang.scheme
- Subject: Re: applying or
- Date: 31 Dec 1992 17:21:04 -0800
- Organization: Institute for Pure and Applied Eschatology
- Lines: 37
- Message-ID: <1i06a0INNgtl@columbia.cs.ubc.ca>
- References: <MOB.92Dec30090646@strident.think.com> <1hsiocINN2v6@columbia.cs.ubc.ca> <1992Dec31.181545.19917@sharebase.com>
- NNTP-Posting-Host: columbia.cs.ubc.ca
-
- In article <1992Dec31.181545.19917@sharebase.com>
- dyer@airplane.sharebase.com (Scot Dyer) writes:
- >Even in Algol, implicit delayed evaluation of procedure parameters was
- >allowed -- a scary coincidence, yes? :)
- Er, yes, and if you want to know the truth about `call-by-name', read
- Don Knuth's article `Algol 60 Confidential', which appeared in CACM
- sometime around '68. Name parameters and own[*] variables were ideas which
- were very elegant indeed; the only problem with them was that they
- couldn't be implemented efficiently (or at all, as in the case with own
- array variables with dynamic bounds). I'm a great fan of elegance, but I
- like my programs to run at speeds somewhat faster than glacial, too.
-
- [*] Own variables were Algol 60's counterpart of statics. The problem
- was that own variables were first class, which led to things like
-
- procedure foo(i);
- integer i;
- begin
- own integer a[i];
- integer j;
- if i < 10 then
- for j := 1 to i do
- read(a[j]);
- else
- a[11] := a[12];
- end;
-
- foo(9); foo(12); foo(9); foo(12);
-
- It really helps when designing a programming language to be able to
- attribute a meaning to all legal programs!
-
- --
- \ Vincent Manis <manis@cs.ubc.ca> "There is no law that vulgarity and
- \ Computer Science, Langara College literary excellence cannot coexist."
- /\ 100 W. 49th Ave, Vancouver, BC, Canada (604) 324-5205 -- A. Trevor Hodge
- / \ Co-author of ``The Schematics of Computation'', Prentice-Hall, Jan 1994
-