Inner functions and outer 'this' (Re: That hash symbol)
P T Withington
ptw at pobox.com
Wed Mar 30 13:13:25 PDT 2011
On 2011-03-29, at 17:52, Allen Wirfs-Brock wrote:
> On Mar 29, 2011, at 1:12 PM, P T Withington wrote:
>> If I had a vote, it would be for a way to explicitly name the `-1th` argument to a function. And I would wish for it to be available in all function forms, defaulting to using the legacy name `this`, if not otherwise specified. I believe it not only addresses the issue in this thread, but leaves the way open for generic functions.
>> [As a user, I infer I fall into your "functional proponent" camp, but I claim to also be an o-o proponent. I just find it much easier to think in generic functions and consider the "distinguished receiver" of message passing as being a degenerate case of that, which has a layer of syntactic sugar to let you express foo(a, b, c) as a.foo(b, c), if you like to think the other way.]
> Yes, the generic function "camp" largely coming out of the Lisp world has always been much more closely assigned with the functional world than with the object-oriented world. To us objectivists a.foo(b,c) really does carry a very different meaning than foo(a,b,c). The OO design process centers on identify the objects that will make up a system, not the functions that make up the system.
While I appreciate this is a "religious battle", IWBNI there were a solution that allowed alternative religions, rather than only the mainstream one. Hence my vote.
More information about the es-discuss