[e-lang] CapTP in E progress report #2: ping test, source now public

Dean Tribble tribble at e-dean.com
Mon Jul 30 11:54:55 EDT 2007


This is just marvelous!

On 7/29/07, Kevin Reid <kpreid at mac.com> wrote:
>
> On Jul 27, 2007, at 23:25, Kevin Reid wrote:
>
> > I have started work on a CapTP implementation in E.
>
> My work so far has now been committed to E-on-CL (revision 855). I
> have CapTP protocol implementations which can transfer simple messages.
>
> svn://www.slimy.com/cl-e/cl-e/trunk/lib/net/captp
>
> Among the things left to be implemented: distributed GC, 3-vat
> introductions, correct far-ref identities, SturdyRefs. I plan to work
> on distributed GC next.
>
> I do not yet have any byte-stream serialization or encryption layers,
> so it won't connect over networks yet.
>
> Here is an example communication from my updoc tests. "rnlR" is the
> NonceLocator for the "left" side as seen from the "right".
>
>    ? def leftObj {
>    >   to ping() { println("pinged"); return "pong" }
>    > }
>    # value: <leftObj>
>
>    ? def swissL :int := swissTableL.getNewSwiss(leftObj); null
>    ? swissTableL.lookupSwiss(swissL) == leftObj
>    # value: true
>
>    ? interp.waitAtTop(def leftViaRight := rnlR <- lookupSwiss(swissL,
> null))
>    # stdout: Left <- Deliver(-1, NewFarDesc(1,
> 1033912670282953026478972818820010722176128073325), 0, "lookupSwiss",
> [10000001, null])
>    #         Left <- DeliverOnly(-1, "__whenMoreResolved", [NewFarDesc
> (2, 47255196895205160731987244561159478631887357377)])
>    #         Right <- DeliverOnly(1, "run", [NewFarDesc(1,
> 382064925828890872342377433413917253333972024416)])
>    #         Right <- DeliverOnly(2, "run", [ImportDesc(1)])
>    #
>
>    ? leftViaRight
>    # value: <Far ref>
>
>    ? interp.waitAtTop(def r := leftViaRight <- ping())
>    # stdout: Left <- Deliver(-2, NewFarDesc(3,
> 412897248500657771667886264468852369692723684603), 1, "ping", [])
>    #         pinged
>    #         Left <- DeliverOnly(-2, "__whenMoreResolved", [NewFarDesc
> (4, 82190111274176756684133692948252028599388244870)])
>    #         Right <- DeliverOnly(3, "run", ["pong"])
>    #         Right <- DeliverOnly(4, "run", ["pong"])
>    #
>
>    ? r
>    # value: "pong"
>
> --
> Kevin Reid                            <http://homepage.mac.com/kpreid/>
>
>
> _______________________________________________
> e-lang mailing list
> e-lang at mail.eros-os.org
> http://www.eros-os.org/mailman/listinfo/e-lang
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.eros-os.org/pipermail/e-lang/attachments/20070730/12c2ef48/attachment.html 


More information about the e-lang mailing list