[e-lang] Proposal: deprecate "rcvr" in favor of "ref"

Marc Stiegler marcs at skyhunter.com
Sun Dec 3 16:52:45 CST 2006


Fine by me. Despite the fact that, since I've been doing Emily and OCaml 
so much lately, it will drive me personally crazy :-)

--marcs

Mark S. Miller wrote:
> I was recently preparing a bit of E code to illustrate a point in a 
> presentation. When it came time to declare that a particular parameter was a 
> possibly remote reference to a PublicFace, I found myself writing
> 
>      to sealIntroduction(..., other :rcvr[PublicFace]) :SealedBox
> 
> In desperation to make the presentation more immediately understandable, I 
> substituted "ref" for "rcvr", and everything read much better. At the time I 
> did this, it was pretend. I propose we deprecate "rcvr" in favor of "ref". 
> Since "ref" had not previously been reserved, this is technically a 
> non-upwards compatible change, but all incompatibilities can be easily and 
> reliably found and fixed. The current E SVN head contains such a trial fix.
> 
> The term "rcvr[T]" for the guard meaning "possibly remote reference to a T" 
> comes out of the threads rooted at
> http://www.eros-os.org/pipermail/e-lang/2001-August/005593.html
> http://www.eros-os.org/pipermail/e-lang/2002-March/006303.html
> http://www.eros-os.org/pipermail/e-lang/2002-March/006302.html
> 
> These threads contain the following alternatives (though these are suggested 
> in the context of variable naming convention rather than guard names):
>      pass
>      grip
>      handle, hand
>      remote, rmt
>      queue, Q
>      distributed, dist
> 
> For the guard name, I still like "ref" the best. "ref" has been suggested 
> before, and I had previously rejected it because of conflict with its meaning 
> to ML and Algol-68 programmers. Despite this objection, I think I still like 
> it best.
> 
> If there are no objections, in the next E release "rcvr" will continue to work 
> but be deprecated, and "ref" will be in the same scope as a non-deprecated 
> synonym.
> 



More information about the e-lang mailing list