Prepare for beta release.

This commit is contained in:
James Roseborough
2010-05-22 18:23:12 +00:00
parent f146268c47
commit 50739f7cb1
2 changed files with 34 additions and 29 deletions

View File

@@ -17,7 +17,7 @@
Getting Started with LuaJ
</h1>
James Roseborough, Ian Farmer, Version 2.0-alpha1
James Roseborough, Ian Farmer, Version 2.0-beta1
<p>
<small>
Copyright &copy; 2009-2010 Luaj.org.
@@ -44,17 +44,17 @@ Freely available under the terms of the
<!-- ====================================================================== -->
<p>
<font color=#800000><em>
This is an alpha release for a luaj 2.0. The most recent stable release is 1.0.3
This is a beta release for a luaj 2.0. The most recent stable release is 1.0.3
</em></font>
<h1>1 - <a name="1">Introduction</a></h1>
<h2>Goals of Luaj</h2>
Luaj is a lua interpreter based on the 5.1.x line of lua with the following goals in mind:
<ul>
<li>Java-centric implementation built to use Java features like garbage collection, and class dispatch.
<li>Java-centric implementation of lua vm built to leverage standard Java features.
<li>Lightweight to allow for small, fast interpretation of lua bytecode.
<li>Complete set of libraries and tools for integration into real-world projects.
<li>Multi-platform to be able to run on JME, JSE, or JEE environments.
<li>Complete set of libraries and tools for integration into real-world projects.
<li>Dependable due to sufficient unit testing of vm and library features.
</ul>
@@ -62,11 +62,12 @@ Luaj is a lua interpreter based on the 5.1.x line of lua with the following goal
In addition to the basic goals of luaj, version 2.0 is aimed
at improving on the 1.0 vm in the following aspects.
<ul>
<li>Support for compiling lua into Java off-line for JME, and at runtime for JSE.
<li>Fastest possible bytecode processing for interpreted code.
<li>Support for compiling lua bytecode directly into Java bytecode.
<li>Improve performance of bytecode processing when lua bytecode is used.
<li>More alignment with C API (see <a href="names.csv">names.csv</a> for details)
<li>Improved class and package naming conventions.
<li>Improved unit tests of core classes.
<li>Improved quality due to major redesign and rewrite of core elements.
</ul>
<h1>2 - <a name="2">Simple Examples</a></h1>
@@ -77,7 +78,7 @@ at improving on the 1.0 vm in the following aspects.
From the main distribution directory line type:
<pre>
java -cp lib/luaj-jse-2.0-alpha1.jar lua examples/lua/hello.lua
java -cp lib/luaj-jse-2.0-beta1.jar lua examples/lua/hello.lua
</pre>
<p>
@@ -92,8 +93,8 @@ You should see the following output:
From the main distribution directory line type:
<pre>
java -cp lib/luaj-jse-2.0-alpha1.jar luac examples/lua/hello.lua
java -cp lib/luaj-jse-2.0-alpha1.jar lua luac.out
java -cp lib/luaj-jse-2.0-beta1.jar luac examples/lua/hello.lua
java -cp lib/luaj-jse-2.0-beta1.jar lua luac.out
</pre>
<p>
@@ -106,13 +107,14 @@ Luaj can compile to lua bytecode if the bcel library is on the class path. From
<pre>
ant bcel-lib
java -cp lib/luaj-jse-2.0-alpha1.jar;lib/bcel-5.2.jar luajc -s examples/lua -d . hello.lua
java -cp lib/luaj-jse-2.0-alpha1.jar;. lua -l hello
java -cp &quot;lib/luaj-jse-2.0-beta1.jar;lib/bcel-5.2.jar&quot; luajc -s examples/lua -d . hello.lua
java -cp &quot;lib/luaj-jse-2.0-beta1.jar;.&quot; lua -l hello
</pre>
<p>
The output <em>hello.class</em> is Java bytecode, should run and produce the same result.
There is no runtime dependency on the bcel library, but the compiled classes must be in the class path.
There is no runtime dependency on the bcel library,
but the compiled classes must be in the class path at runtime.
<pre>
</pre>
@@ -138,7 +140,7 @@ A simple example may be found in
</pre>
<p>
You must include the library <b>lib/luaj-jse-2.0-alpha1.jar</b> in your class path.
You must include the library <b>lib/luaj-jse-2.0-beta1.jar</b> in your class path.
<h2>Run a script in a MIDlet</h2>
@@ -165,7 +167,7 @@ A simple example may be found in
</pre>
<p>
You must include the library <b>lib/luaj-jme-2.0-alpha1.jar</b> in your midlet jar.
You must include the library <b>lib/luaj-jme-2.0-beta1.jar</b> in your midlet jar.
<p>
An ant script to build and run the midlet is in
@@ -226,7 +228,7 @@ The standard use of JSR-233 scripting engines may be used:
All standard aspects of script engines including compiled statements should be supported.
<p>
You must include the library <b>lib/luaj-jse-2.0-alpha1.jar</b> in your class path.
You must include the library <b>lib/luaj-jse-2.0-beta1.jar</b> in your class path.
<p>
A working example may be found in
@@ -264,9 +266,8 @@ Libraries are coded to closely match the behavior specified in
See <a href="http://www.lua.org/manual/5.1/">standard lua documentation</a> for details on the library API's
<p>
The following libraries are loaded in py both <em>JsePlatform.standardGlobals()</em> and <em>JmePlatform.standardGlobals()</em>:
<pre>
base
The following libraries are loaded by both <em>JsePlatform.standardGlobals()</em> and <em>JmePlatform.standardGlobals()</em>:
<pre> base
coroutine
io
math
@@ -278,14 +279,12 @@ The following libraries are loaded in py both <em>JsePlatform.standardGlobals()<
<p>
The <em>JsePlatform.standardGlobals()</em> globals also include:
<pre>
luajava
<pre> luajava
</pre>
<p>
The <em>JsePlatform.debugGlobals()</em> and <em>JsePlatform.debugGlobals()</em> functions produce globals that include:
<pre>
debug
<pre> debug
</pre>
<h3>I/O Library</h3>
@@ -352,7 +351,7 @@ The following lua script will open a swiing frame on Java SE:
<p>
See a longer sample in <em>src/test/res/swingapp.lua</em> for details, or try running it using:
<pre>
java -cp lib/luaj-jse-2.0-alpha1.jar lua src/test/res/swingapp.lua
java -cp lib/luaj-jse-2.0-beta1.jar lua src/test/res/swingapp.lua
</pre>
<p>
@@ -418,17 +417,23 @@ and LuaForge:
<h2>Main Changes by Version</h2>
<table cellspacing="10"><tr><td><table cellspacing="4">
<tr valign="top"><td>&nbsp;&nbsp;<b>2.0-alpha1</b></td><td><ul>
<li>All basic bunit tests pass.
<tr valign="top"><td>&nbsp;&nbsp;<b>2.0-beta1</b></td><td><ul>
<li>All basic unit tests pass.
<li>Initial port of all libraries has been done.
<li>Compile-to-Java based on bcel 5.2.
<li>Compile-to-Java based on bcel 5.2 working for unit tests.
</ul></td></tr>
</table>
<h2>Known Issues</h2>
<ul>
<li>module() and setfenv() don't work with compiled code
<li>module() and setfenv() don't work with closures in compiled chunks
<li>debug code may not be removed by obfuscators
<li>not all luajava bugfixes have been ported over
<li>lua-to-java bytecode generation can produce incorrect results
<li>weak tables may not release items in all cases
<li>tail calls may not work as expected in some cases
<li>tail calls are not tracked in debug information
<li>using both version 1 and version 2 libraries together in the same java vm has not been tested.
<li>design of default file loading behavior may change.
<li>likely to make changes to support the lua 5.2 API once it is finalized.
</ul>

View File

@@ -1,2 +1,2 @@
# on the way to version 2.0
version: 2.0-alpha1
version: 2.0-beta1