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