Re: [vwrap] Networked Communication of Objects: some thoughts

Lawson English <lenglish5@cox.net> Mon, 07 March 2011 18:12 UTC

Return-Path: <lenglish5@cox.net>
X-Original-To: vwrap@core3.amsl.com
Delivered-To: vwrap@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 10D0D3A67DA for <vwrap@core3.amsl.com>; Mon, 7 Mar 2011 10:12:21 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.598
X-Spam-Level:
X-Spam-Status: No, score=-2.598 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, HTML_MESSAGE=0.001]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id a4KbFltL1HcU for <vwrap@core3.amsl.com>; Mon, 7 Mar 2011 10:12:19 -0800 (PST)
Received: from fed1rmfepo103.cox.net (fed1rmfepo103.cox.net [68.230.241.145]) by core3.amsl.com (Postfix) with ESMTP id B53503A67F3 for <vwrap@ietf.org>; Mon, 7 Mar 2011 10:12:18 -0800 (PST)
Received: from fed1rmimpo01.cox.net ([70.169.32.71]) by fed1rmfepo103.cox.net (InterMail vM.8.01.04.00 201-2260-137-20101110) with ESMTP id <20110307181332.VSUJ20516.fed1rmfepo103.cox.net@fed1rmimpo01.cox.net> for <vwrap@ietf.org>; Mon, 7 Mar 2011 13:13:32 -0500
Received: from testsite.local ([72.200.122.104]) by fed1rmimpo01.cox.net with bizsmtp id GJDX1g00i2FFAJo03JDXCK; Mon, 07 Mar 2011 13:13:31 -0500
X-VR-Score: -150.00
X-Authority-Analysis: v=1.1 cv=WtRarTlxVJ38pOpEoV/iO0An5zAk6Rp4dU44mOq+3B0= c=1 sm=1 a=A0BIZ8095Y0A:10 a=Wajolswj7cQA:10 a=F1WT8d/iksvrQKts3CK7KQ==:17 a=48vgC7mUAAAA:8 a=pGLkceISAAAA:8 a=QKNIQRYFAAAA:8 a=G_bLLVcMTxy6TxTcUm4A:9 a=myeWF4S_tu6bXiSmYSMA:7 a=foW1Ng5OB61hRqQ1T3RwHtiyt9cA:4 a=wPNLvfGTeEIA:10 a=1saAOwDhB0AA:10 a=MSl-tDqOz04A:10 a=lZB815dzVvQA:10 a=lTUmxKvJ7u8VIDBpPhsA:9 a=aC4ZMexMhzQHyjpKH3EA:7 a=b_MaZW1pLY4fzJcu8fOnM8rpYI0A:4 a=F1WT8d/iksvrQKts3CK7KQ==:117
X-CM-Score: 0.00
Authentication-Results: cox.net; none
Message-ID: <4D75204B.3020903@cox.net>
Date: Mon, 07 Mar 2011 11:13:31 -0700
From: Lawson English <lenglish5@cox.net>
User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.2.15) Gecko/20110303 Thunderbird/3.1.9
MIME-Version: 1.0
To: vwrap@ietf.org
References: <AANLkTinY3DGEhopPy8SCZQ1qG519Q1hJKwJEmTgBJxLT@mail.gmail.com> <AANLkTimFpEqh6qDR_FExVcodtQb3dPLyXXPPzUh8kqnS@mail.gmail.com>
In-Reply-To: <AANLkTimFpEqh6qDR_FExVcodtQb3dPLyXXPPzUh8kqnS@mail.gmail.com>
Content-Type: multipart/alternative; boundary="------------030706030302080800050409"
Subject: Re: [vwrap] Networked Communication of Objects: some thoughts
X-BeenThere: vwrap@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
Reply-To: lenglish5@cox.net
List-Id: Virtual World Region Agent Protocol - IETF working group <vwrap.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/vwrap>, <mailto:vwrap-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/vwrap>
List-Post: <mailto:vwrap@ietf.org>
List-Help: <mailto:vwrap-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/vwrap>, <mailto:vwrap-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 07 Mar 2011 18:12:21 -0000

For me, the best existing examples of networked objects are the 
Cobalt/Croquet implementations of David Reed's Teatime Architecture and 
the original Kansas collaborative environment from Sun. Of course, they 
were relatively easy to
implement because the languages used, Smalltalk and Self, are OOP "all 
the way down," so there's no programmer skill required for sending 
messages to remote objects in different applications/computers because 
its all OOP messaging. You can fake the messaging in various ways with 
non-pure-OOP languages, and obviously when more than one language comes 
into play, things get more complicated.

But, the basic relationships stay the same, even with multiple 
languages. Until you examine what is done with the pure OOP 
implementations of this idea, you're going to be limited in what you 
think can be done in this scenario (hint, its a lot more than you 
think... a LOT more) because you'll limit your ideas due to 
complications of the implementation.

My own take is that virtual worlds should take an existing OOP 
implementation, like Teatime, and use it as the lingua franca for 
messaging between worlds. To the messaging system, its all TObjects 
passing messages back and forth. Within the TObject, the implementation 
can be done in any language on any hardware. The hard part, fully 
orthogonal message-passing between remote objects using existing network 
and IPC protocols, has already been solved by TeaTime, so why try to 
reinvent the wheel? Just use Squeak as the carrier for OOP interop 
between worlds and worry about the API between objects in terms of 
smalltalk message definitions.

All else is implementation detail for the behavior of objects within the 
individual worlds, which is an already-solved problem.

Boom. You're done.


Lawson


On 3/7/11 2:16 AM, Morgaine wrote:
> Christopher, your post 
> http://www.ietf.org/mail-archive/web/vwrap/current/msg00528.html of a 
> few weeks ago and its linked PDF gave me much food for thought.  
> Web-oriented communication with objects in virtual worlds is useful, 
> but it seems to me that this is really just a subset of a larger field 
> of interest:  communication /*between objects*/ in virtual worlds.
>
> It's rather remarkable that throughout the long 
> AWG->OGP->MMOX->OGPX->VWRAP process, we never considered inter-object 
> communication between VWs.  Yet, communication with and between VW 
> objects is undoubtedly an important aspect of VW interop, as it 
> provides essential mechanisms for integration.
>
> That was a failure on our part, probably caused by excessive 
> familiarity with the largest commercial VW service, which 
> unfortunately doesn't recognize the existence of other virtual worlds 
> and the need to communicate with them.  We need to do better than this 
> if we're trying to bring in a future of interop.
>
> Since we're already defining an abstract data type and some 
> serialization formats to carry it, why don't we extend the role of 
> these definitions to inter-object communication as well?  It's a 
> relatively small step from LLSD to an LLSD-based messaging format --- 
> the only additional requirement is a scheme for VW object addressing 
> so that an LLSD-formatted message can reach the right object in the 
> intended virtual world.
>
> I can think of several ways of achieving this in a flexible way, and 
> numerous applications for it.  Perhaps it's worth discussing?
>
>
> Morgaine.
>
>
>
> =======================================
>
> On Sun, Jan 16, 2011 at 4:54 AM, L. Christopher Bird 
> <zenmondo@gmail.com <mailto:zenmondo@gmail.com>> wrote:
>
>     Before we turn off the lights...
>
>     I have recently written a paper Entitled Networked Communication
>     of Second Life® Objects using LSL, php, and MySQL. And it can be
>     found at
>     http://flynnos.org/Networked%20Communication%20of%20Second%20Life%20Objects.pdf
>     Its short so I will wait while you read it.
>
>     So this got me to thinking, though my application is specific to
>     Second Life, there is no reason that communication between objects
>     in various grids with non-persistent URLs could not be obtained
>     with a simple extension to this method.  Though my method
>     specifically uses the LSL HTTP server (which I believe up to this
>     point is not reproduced in the OpenSimulator LSL clone) any object
>     in any virtual space that can send and receive HTTP requests
>     should be able to join in one of the networks described in the paper.
>
>     The best part is that this is built on existing standards and all
>     that is needed  in any virtual world to implement something like
>     this is an HTTP channel to your virtual object.
>
>     Thoughts? Criticisms? Comments?
>
>     -- Christopher (ZenMondo)
>
>     _______________________________________________
>     vwrap mailing list
>     vwrap@ietf.org <mailto:vwrap@ietf.org>
>     https://www.ietf.org/mailman/listinfo/vwrap
>
>
>
> _______________________________________________
> vwrap mailing list
> vwrap@ietf.org
> https://www.ietf.org/mailman/listinfo/vwrap