aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--LuaSL/README25
-rw-r--r--README1
-rw-r--r--libraries/README10
3 files changed, 27 insertions, 9 deletions
diff --git a/LuaSL/README b/LuaSL/README
index c019fb7..7eb9ce0 100644
--- a/LuaSL/README
+++ b/LuaSL/README
@@ -7,7 +7,9 @@ client side scripting engine.
7 7
8To compile this, you will need Enlightenment Foundation Libraries (EFL) 8To compile this, you will need Enlightenment Foundation Libraries (EFL)
9installed in either /opt/e17 or /usr. These are typical places it get's 9installed in either /opt/e17 or /usr. These are typical places it get's
10installed in. 10installed in. You will also need flex. The rest of the dependencies
11are in the ../libraries directory, including the source code for the
12version of EFL this is tested with.
11 13
12 14
13Design. 15Design.
@@ -24,9 +26,9 @@ A parser parses an LSL script, validating it and reporting errors.
24A preprocessor takes the result of the parse, and converts it into Lua 26A preprocessor takes the result of the parse, and converts it into Lua
25source. Each LSL script becomes a Lua state. LSL states are handled as 27source. Each LSL script becomes a Lua state. LSL states are handled as
26Lua tables, with each LSL state function being a table function in a 28Lua tables, with each LSL state function being a table function in a
27common metatable. LL and OS functions are likely to be C functions. 29common metatable. LL and OS functions are likely to be C or Lua
28Careful testing should be done with LuaJIT FFI, sandboxing, and 30functions. Careful testing should be done with LuaJIT FFI, sandboxing,
29performance testing. 31and performance testing.
30 32
31The Lua source is compiled by the Lua compiler. 33The Lua source is compiled by the Lua compiler.
32 34
@@ -40,6 +42,13 @@ commands invoke LSL events via the LuaSL state metatable. LL and OS
40functions that impact the world will be converted to nails commands sent 42functions that impact the world will be converted to nails commands sent
41to the command pump. 43to the command pump.
42 44
45Initialy, since this is the first thing being written, a nails command
46pump client needs to be installed into OpenSim's C# stuff. Though it
47might be possible to talk directly to ROBUST instead. Think I'll try
48the ROBUST route, see hov far I can get. That's the general principle
49applying in all of this - try to avoid C# and see how for we can get.
50lol
51
43A watchdog thread is used to make sure no LuaSL script spends forever 52A watchdog thread is used to make sure no LuaSL script spends forever
44processing any event. 53processing any event.
45 54
@@ -57,11 +66,15 @@ buttons for triggering LSL events, SL style dialogs, and other goodies.
57The initial goal will be to run standard MLP scripts. They have minimal 66The initial goal will be to run standard MLP scripts. They have minimal
58interface to the world, and exercise quite a bit of the rest of LSL. 67interface to the world, and exercise quite a bit of the rest of LSL.
59They are also quite common, and sometimes responsible for a lot of the 68They are also quite common, and sometimes responsible for a lot of the
60script running load. Gotta start somewhere, so start with the ~run 69script running load.
61script. 70
71Later I should add stock standard OpenCollar scripts from SL. They are
72a bitch to get working under OpenSim, so would be good compatability
73tests.
62 74
63Various eina logging domains will be used to handle whisper, say, shout, 75Various eina logging domains will be used to handle whisper, say, shout,
64etc. 76etc.
65 77
66Performance testing will have to be done on 5000 scripts, to see how 78Performance testing will have to be done on 5000 scripts, to see how
67that compares against XEngine. 79that compares against XEngine.
80
diff --git a/README b/README
index 428c175..a3ce617 100644
--- a/README
+++ b/README
@@ -9,3 +9,4 @@ slave away for years just to get to the point where we have a single
9avatar standing still in an empty world. 9avatar standing still in an empty world.
10 10
11http://wiki.infinitegrid.org/index.php/OMG discusses our plans. 11http://wiki.infinitegrid.org/index.php/OMG discusses our plans.
12
diff --git a/libraries/README b/libraries/README
index fca7114..3f6e7c7 100644
--- a/libraries/README
+++ b/libraries/README
@@ -1,4 +1,8 @@
1There are some base libraries that should be used in common. Notable 1There are some base libraries that should be used in common. Notable
2the Enlightenment Foundation Libraries. Other external open source 2the Enlightenment Foundation Libraries (EFL), LuaJIT, luaproc, and
3projects that we just use directly should go here to. Makes it easy to 3lemon. Other external open source projects that we just use directly
4compile it all. 4should go here to. Makes it easy to compile it all.
5
6Note that in some cases, there might be changes. Such changes should be
7documented.
8