[Opensim-dev] Changes needed to DotNet engine to make use of shared LSL and OSSL
Charles Krinke
cfk at pacbell.net
Tue Jul 1 22:13:17 UTC 2008
Dear Kr:
The key issue seems to be that the file LSL_BuiltIn_Commands.cs contained all our C# subroutine implementations for the 328 LSL commands. Now that file has been copied and morphed.
So, my suggestion is to take the common parts of the existing file, and the copied and morphed file and put them into a third file. That third file might be LSL_Api.cs.
In any case, it seems to me that whatever unique parts are appropriate for the new scriptengine implementation and unique parts for the existing script engine implementation then reference the namespace of the common file, whatever we wish to call it.
In the common file are all the things like llSay(), llCeil(), llFloor() that just are wrappers around C# subroutines. In fact, 85% of the original LSL_BuiltIn_Commands.cs and the new, copied file are identical.
So, I would say, lets have an interface, or a derived class, or whatever you feel comfortable with and just move forward.
The most important thing to me in this whole controversy right now is to not have two identical copies of hundreds of little subroutines.
Charles
----- Original Message ----
From: krtaylor <krtaylor at linux.vnet.ibm.com>
To: opensim-dev at lists.berlios.de
Sent: Tuesday, July 1, 2008 2:48:26 PM
Subject: [Opensim-dev] Changes needed to DotNet engine to make use of shared LSL and OSSL
As per the discussion on irc earlier today, I agreed to summarize the
plans to move forward with separating LSL from the current DotNet
engine, to make use of the shared structures proposed with the new
xengine. This isn't complete by any means, but meant to start an email
discussion.
The current DotNetEngine needs to be changed to make it able to process
events and share LSL and other languages via API files:
1. Use the IScriptEngine and IScript interfaces to support a per
instance object in the ScriptManager
- changes to refactor IScript using the AppDomainObject (IScript) from
Shared and to rescope the existing IScript to IScriptInstance and move
outside AppDomain
2.Use EventParams and DetectParams
I have been toying with the idea of either patching the DotNet engine or
just porting the DotNet enhanced functionality to a XEngine clone for a
new DotNet base. Since we are already proposing isolating the languages
there is certain advantages to the later. The former would leave some
problems to fix, which have already been resolved in the XEngine. Either
way, I think a fork to a 3rd engine would be the best approach. This
would allow others to get involved, and retain both engines as they are
today, and not break everyone all by simply having a 3rd engine for a
while.
Comments?
--
Kurt R Taylor (Kurt Stringer)
Open Virtual Worlds Development
http://opensimulator.org http://opensim.ibm.com
International Business Machines, Corp.
(512) 838-2496 T/L: 678
_______________________________________________
Opensim-dev mailing list
Opensim-dev at lists.berlios.de
https://lists.berlios.de/mailman/listinfo/opensim-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://opensimulator.org/pipermail/opensim-dev/attachments/20080701/ab6b9ecd/attachment-0001.html>
More information about the Opensim-dev
mailing list