[e-lang] EProxyResolver and sameness-breaking
Mark Miller
erights at gmail.com
Wed Mar 7 13:24:41 CST 2007
On 3/7/07, Kevin Reid <kpreid at mac.com> wrote:
> Another question. EProxyResolver has the following methods:
> [...] Of these, the following would naturally go away given my proposal:
>
> # to resolve(_) :void
> # to resolve(_, :Boolean) :Boolean
> # to resolveRace(_) :Boolean
> # to smash(:nullOk[Throwable]) :Boolean
Yes.
> 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
> (other than possibly being an implementation detail), 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'm hopeful the answer to your overall answer will be yes.
--
Text by me above is hereby placed in the public domain
Cheers,
--MarkM
More information about the e-lang
mailing list