[e-lang] Announcing E 0.8.26g: Many small breaks with the past
Kevin Reid
e-lang@mail.eros-os.org
Fri, 5 Mar 2004 18:18:05 -0500
Miller, Mark <erights@hp.com> wrote:
> Kevin Reid wrote:
> > Mark S. Miller <markm@caplet.com> wrote:
> > ...
> > > Non-Upwards Compatible Changes
> > ...
> > > Retiring Previously Deprecated Features
> > > * e.enable.dot-props property has been retired. Rather than
> > > the old "bob foo(carol)", one must now write "bob.foo(carol)".
> >
> > I think you mean e.enable.no-paren-call.
>
> Oops. Good catch, but I meant neither. I mean instead the
> e.enable.no-dot-call. I've fixed the highlights page.
Oops! Of course.
> > (Den currently uses get/2 heavily. If running Den is a problem for you
> > due to this, I'll install 0.8.26 and work on getting Den updated to
> > match.)
>
> Yes thanks, I'd appreciate that.
I'll post when I have done so.
> > For a while I've been thinking of a generalization of this - a
> > PassByCopy struct maker, something like:
> >
> > def makeStruct(data :Map[[String, List], any]) :any {
> > def struct implements PassByCopy {
> > match msg {
> > data[msg]
> > }
> > }
> > }
> >
> > For example:
> >
> > def makeValueThunk(value) :any {
> > makeStruct([["get", []] => value])
> > }
>
> Weird and interesting. Hmmm... I need to stew on this.
It's essentially a variety of non-Turing-complete mobile code.
Only somewhat related question: is it currently possible for
E-implemented objects to control how they are passed over a CapTP
connection?
> > > First Draft Causeway Code Included
> >
> > Wild speculation: Causality tracking for eventual sends?
>
> Yes! See http://www.eros-os.org/pipermail/e-lang/2002-November/007811.html.
General thought:
There must be a finite limit on how much history is kept. Much
computation across turns happens in the form of what would be
essentially tail-calls in synchronous execution (for example, the
EverReporter/Reactor interface).
--
Kevin Reid