[e-lang] EProxyResolver and sameness-breaking
Kevin Reid
kpreid at mac.com
Wed Mar 7 15:06:50 CST 2007
On Mar 7, 2007, at 14:24, Mark Miller wrote:
> On 3/7/07, Kevin Reid <kpreid at mac.com> wrote:
>> Of the remaining methods,
>>
>> # to getOptIdentity() :any
>> # to getProxy() :nullOk[Ref]
>> # to gettingCloser() :void
>> # to isDone() :Boolean
>> # to optHandler() :nullOk[EProxyHandler]
>> # to reactToGC() :void
>>
>> what are these used for by the E-level clients of an
>> EProxyResolver, and could they be eliminated? In particular, could
>> we entirely eliminate the EProxyResolver object ... and have
>> instead makeProxy(handler, resolution) which directly returns a
>> proxy?
>
> In answering this, we need to consider as an E-level client the
> anticipated rewrite of the captp library in E. From looking briefly
> at the current Java-based implementation, it would seem all could
> easily go except getProxy() and reactToGC(). I think I see how to
> get rid of these as well, but it requires more thinking than I can
> take the time for at the moment.
I just did a search for "reactToGC". It appears that EProxyResolver
(not EProxyHandler)'s reactToGC is called only as a WeakPtr reactor,
and so it does not need to (and should not) be part of the client
interface.
Not that you mentioned this as an issue, but gettingCloser/0 should
be replaceable with a when-more-resolved reactor on the resolution
promise.
--
Kevin Reid <http://homepage.mac.com/kpreid/>
More information about the e-lang
mailing list