Path: utzoo!mnetor!tmsoft!torsqnt!news-server.csri.toronto.edu!bonnie.concordia.ca!ccu.umanitoba.ca!herald.usask.ca!alberta!aunro!aupair.cs.athabascau.ca!atha!decwrl!uunet!mcsun!ukc!dcl-cs!aber-cs!athene!pcg From: pcg@test.aber.ac.uk (Piercarlo Antonio Grandi) Newsgroups: comp.object Subject: Re: What are closures? Message-ID: Date: 13 Mar 91 15:08:21 GMT References: <1991Mar8.061042.5578@tukki.jyu.fi> <1991Mar11.062302.18142@tukki.jyu.fi> <2164@media01.UUCP> Sender: aro@aber-cs.UUCP Organization: Coleg Prifysgol Cymru Lines: 26 Nntp-Posting-Host: aberdb In-reply-to: pkr@media01.UUCP's message of 12 Mar 91 21:35:02 GMT On 12 Mar 91 21:35:02 GMT, pkr@media01.UUCP (Peter Kriens) said: pkr> The word closures is used many times and normally I am able to pkr> understand what is meant from the context. But in this case I have pkr> been confoundly confused. Strictly speaking, a closure is a persistent reusable denotable "first class" context. In many languages contexts (aka environemt frames) are not denotable or persistent or reusable; each procedure instance creates a new implicit context for that invocation. Closure is at times used by extension to indicate the whole of a persistent reusable denotable procedure instance, but while accepting the convention I would like to insist that more properly it is only the context therein. In the debate you have been following some have insisted (me, for example :->) that an object in most OO languages is a persistent denotable reusable lexical context shared by all the methods for that object. -- Piercarlo Grandi | ARPA: pcg%uk.ac.aber@nsfnet-relay.ac.uk Dept of CS, UCW Aberystwyth | UUCP: ...!mcsun!ukc!aber-cs!pcg Penglais, Aberystwyth SY23 3BZ, UK | INET: pcg@aber.ac.uk