🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.lang.misc
Article #2695

Re: Re^4: Closures (was Re: class-sic.)

#2695
From: Chris Dollin
Date: Fri, 25 Jan 1991 09:38
37 lines
2636 bytes
Ken Dickey writes (following up on my earlier posting):

   >Ken (and others) seem to have fallen into the accidental terminological trap
   >that Lawrence has set. In Pop, the term "closure" has traditionally meant a
   >procedure created by partially applying some given to procedure to some
   >collection of arguments.

   I must clain ignorance of Pop, but in common usage [e.g. see (1), (2),
   (3)], a closure is called such because it captures free variables by
   "closing over" the environment at time of creation.  This differs from
   currying [see (1), (3)] which seems to be what you mean by "closure".

   Again, my viewpoint comes from literature in lambda calculus and
   denotational semantics.  Are there references in the general
   literature which support your definition?

I'm sorry, I didn't make myself clear. When I said "In Pop, the term ... " I
meant "in the existing Pop[2..11] communities" that the term closure has been
used that way. It is an idiosyncatic use, it is not the way the term is used
in other programming languages (in particular, Lisp), and it is indeed like
currying [*1]. 

I had intended to avoid confusion by pointing out that Lawrence (who appears to
be a Pop programmer or to have been exposed to it at some point) was using
"closure" in a sense different to most other readers of c.l.m. I'm sorry to
have caused any confusion myself ....

[*1] Apart from the fact that Pop closures have to be explicit (ie, making a
closure is syntactically different from applying the function - in fact it is
implemented by calling the system function "consclosure" with the function to
be closed and the arguments to be frozen in) and currying works left-to-right,
Pop partial applications working right-to-left.
--

Regards, Kers.      | "You're better off  not dreaming of  the things to come;
Caravan:            | Dreams  are always ending  far too soon."
Technical Details
Message-ID: <KERS.91Jan25093805@cdollin.hpl.hp.com>
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!usc!sdd.hp.com!hplabs!otter.hpl.hp.com!hpltoad!cdollin!kers
References: <20058@yunexus.YorkU.CA> <27942:Jan902:20:0791@kramden.acf.nyu.edu> <27770.278aef90@kuhub.cc.ukans.edu> <22345:Jan1021:30:4591@

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!usc!sdd.hp.com!hplabs!otter.hpl.hp.com!hpltoad!cdollin!kers
From: kers@hplb.hpl.hp.com (Chris Dollin)
Newsgroups: comp.lang.misc
Subject: Re: Re^4: Closures (was Re: class-sic.)
Message-ID: <KERS.91Jan25093805@cdollin.hpl.hp.com>
Date: 25 Jan 91 09:38:05 GMT
References: <20058@yunexus.YorkU.CA> <27942:Jan902:20:0791@kramden.acf.nyu.edu> <27770.278aef90@kuhub.cc.ukans.edu> <22345:Jan1021:30:4591@
Sender: news@hplb.hpl.hp.com (Usenet News Administrator)
Organization: Hewlett-Packard Laboratories, Bristol, UK.
Lines: 37
In-Reply-To: kend@data.UUCP's message of 23 Jan 91 16:51:57 GMT
Nntp-Posting-Host: cdollin.hpl.hp.com