Welcome to the Second Life Forums Archive

These forums are CLOSED. Please visit the new forums HERE

Discussion: Open Source Interoperability Framework

Khemical Stonecutter
Registered User
Join date: 16 Sep 2005
Posts: 3
03-02-2007 07:16
In the spirit of "release early, release often", I'm making available some key components of the LSL implementation of the Fractally Unified Network Knowledgesphere(FUNK). FUNK is a dynamic, distributed, scalable information environment where humans and programs can collaborate on exchanging, processing and storing information. The specifications for FUNK are at http://www.funkencode.com/spec .

The current release implements the FUNK Encoding and Remote Action Packets(RAP) specifications. In addition to their use in FUNK, in LSL the encoding scripts are also good for passing parameters, untyped variables, lists containing lists and associative arrays. RAP provides a consistent format for inter-object messaging both in-world and external. A video of RAP in action with Croquet is available at http://croquet.funkencode.com/2007/02/24/black-and-white-people/

You can download these scripts from http://lsl.funkencode.com
Nada Epoch
The Librarian
Join date: 4 Nov 2002
Posts: 1,423
Original Thread
03-06-2007 03:20
/15/a7/169116/1.html
_____________________
i've got nothing. ;)
Strife Onizuka
Moonchild
Join date: 3 Mar 2004
Posts: 5,887
03-06-2007 06:36
The spec calls for using url escaped characters, which in my mind is overkill.
The implementation is inefficient in both runtime and bytecode.
What irks me is that the whitespace isn't consistent.

Used in an LSL<->LSL comms protocol it is inappropriate. LSL supports UTF-8 there is no need to escape characters. There are better and easier ways for dealing with this sort of thing in LSL (TightList & TightListType comes to mind). CSV has issues, it's a good starting place but it's too static.
_____________________
Truth is a river that is always splitting up into arms that reunite. Islanded between the arms, the inhabitants argue for a lifetime as to which is the main river.
- Cyril Connolly

Without the political will to find common ground, the continual friction of tactic and counter tactic, only creates suspicion and hatred and vengeance, and perpetuates the cycle of violence.
- James Nachtwey
Khemical Stonecutter
Registered User
Join date: 16 Sep 2005
Posts: 3
03-06-2007 15:23
From: Strife Onizuka
The spec calls for using url escaped characters, which in my mind is overkill.
The implementation is inefficient in both runtime and bytecode.
What irks me is that the whitespace isn't consistent.

Used in an LSL<->LSL comms protocol it is inappropriate. LSL supports UTF-8 there is no need to escape characters. There are better and easier ways for dealing with this sort of thing in LSL (TightList & TightListType comes to mind). CSV has issues, it's a good starting place but it's too static.

Thanks for the feedback! It, patience and time will hopefully allow me to clarify some things. If it were intended primarily for LSL<->LSL comms, I would agree with your "overkill" observation. However, RAP is part of a broader framework for interoperability that provides non-expert users the ability to script the meshverse - including Second Life objects. As with all environments, there will be solutions which require experienced coders to choose or even invent more efficient approaches. GVScript - http://www.gvscript.com/2007/02/20/second-life-version/ uses RAP to provide coders with the ability to use a consistent messaging format across environmental and language boundries. For beginning and intermediate LSL coders this can mean the difference between a problem being approachable with tools and concepts they are familar with or intractable because there are too many nuances and details for them to wade through. Yes poor performing solutions will result in some cases but taking a glass-half-full type of person, experienced developers can benefit from a working specification of what someone wants to accomplish. With GVScript all of the means of LSL<->LSL communication are available to a developer and I am very interested in seeing more powerful approaches integrated. The web is inefficient at a bit level, but on a macro, planetary scale it has proven very efficient at empowering non-experts and seasoned professionals to create solutions that matter. RAP is attempting to be efficient on a broader scale.
Talarus Luan
Ancient Archaean Dragon
Join date: 18 Mar 2006
Posts: 4,831
03-07-2007 09:01
Thanks for the offer, but I already have a messaging protocol which I've built over the course of many months that I use for my stuff. :)