aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/LuaSL/README
diff options
context:
space:
mode:
authorDavid Walter Seikel2012-02-10 16:45:22 +1000
committerDavid Walter Seikel2012-02-10 16:45:22 +1000
commit79d87a9bf9cec73add710cc9983fc7aa16a8912b (patch)
treed464f18bf473ae2d9d02a3c9138dcbf6acd9bb7d /LuaSL/README
parentMove sound functions to media. (diff)
downloadSledjHamr-79d87a9bf9cec73add710cc9983fc7aa16a8912b.zip
SledjHamr-79d87a9bf9cec73add710cc9983fc7aa16a8912b.tar.gz
SledjHamr-79d87a9bf9cec73add710cc9983fc7aa16a8912b.tar.bz2
SledjHamr-79d87a9bf9cec73add710cc9983fc7aa16a8912b.tar.xz
More design notes.
Diffstat (limited to 'LuaSL/README')
-rw-r--r--LuaSL/README18
1 files changed, 14 insertions, 4 deletions
diff --git a/LuaSL/README b/LuaSL/README
index 7eb9ce0..cf5f9ae 100644
--- a/LuaSL/README
+++ b/LuaSL/README
@@ -19,7 +19,8 @@ The basic design will be made up as I go along, but so far I have this -
19 19
20An object is a file system directory, full of LSL scripts as text files, 20An object is a file system directory, full of LSL scripts as text files,
21notecards as text files, animations as BVH (or later BVJ) files, etc. 21notecards as text files, animations as BVH (or later BVJ) files, etc.
22There will be some sort of metadata in place. 22There will be some sort of metadata in place. This could be created by
23our own OpenSim compatible cache module.
23 24
24A parser parses an LSL script, validating it and reporting errors. 25A parser parses an LSL script, validating it and reporting errors.
25 26
@@ -34,8 +35,9 @@ The Lua source is compiled by the Lua compiler.
34 35
35LuaJIT is used as the Lua compiler, library, and runtime. 36LuaJIT is used as the Lua compiler, library, and runtime.
36 37
37Luaproc is used to start up operating system threads and hand Lua 38Luaproc is used to start up operating system threads and hand Lua states
38states between them. 39between them. Luaproc messaging is also being used, but might need to
40change to edje messaging.
39 41
40Nails is used to pump commands in and out of the LuaSL system. Incoming 42Nails is used to pump commands in and out of the LuaSL system. Incoming
41commands invoke LSL events via the LuaSL state metatable. LL and OS 43commands invoke LSL events via the LuaSL state metatable. LL and OS
@@ -45,7 +47,7 @@ to the command pump.
45Initialy, since this is the first thing being written, a nails command 47Initialy, since this is the first thing being written, a nails command
46pump client needs to be installed into OpenSim's C# stuff. Though it 48pump 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 49might 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 50the ROBUST route, see how 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. 51applying in all of this - try to avoid C# and see how for we can get.
50lol 52lol
51 53
@@ -56,6 +58,14 @@ Some form of serialization will need to be created for saving script
56state during shutdowns, passing script state to other threads / 58state during shutdowns, passing script state to other threads /
57processes / computers. 59processes / computers.
58 60
61There will have to be a MySQL (and maybe SQLite) client in the system,
62so we can talk directly to the local sim database. Esskyuehl may be
63suitable, though it's still in the prototype stage.
64
65Email, HTTP, and XML-RPC might need to be dealt with by us. A ROBUST
66client will be needed to. Azy might be suitable, but it's also in
67prototype.
68
59 69
60Test harness. 70Test harness.
61------------- 71-------------