SUMMARY
=======
This is a port of the Lua programming language for AmigaOS 4.0.
Now includes dynamic library support which opens up all sorts of
possibilites for easily extending Lua with AmigaOS functionality.
See the amiga directory for more information.
An example amigalua.library is provided to give a small sample of
what is possible without having to recompile Lua itself.
ABOUT LUA
=========
For more information about Lua see http://www.lua.org/
Lua is a powerful light-weight programming language designed for extending
applications. Lua is also frequently used as a general-purpose, stand-alone
language. Lua is free software.
Lua combines simple procedural syntax with powerful data description
constructs based on associative arrays and extensible semantics. Lua is
dynamically typed, interpreted from bytecodes, and has automatic memory
management with garbage collection, making it ideal for configuration,
scripting, and rapid prototyping.
A fundamental concept in the design of Lua is to provide meta-mechanisms
for implementing features, instead of providing a host of features directly
in the language. For example, although Lua is not a pure object-oriented
language, it does provide meta-mechanisms for implementing classes and
inheritance. Lua's meta-mechanisms bring an economy of concepts and keep
the language small, while allowing the semantics to be extended in
unconventional ways. Extensible semantics is a distinguishing feature
of Lua.
Lua is a language engine that you can embed into your application. This
means that, besides syntax and semantics, Lua has an API that allows the
application to exchange data with Lua programs and also to extend Lua with
C functions. In this sense, Lua can be regarded as a language framework for
building domain-specific languages.
Lua is implemented as a small library of C functions, written in ANSI C,
and compiles unmodified in all known platforms. The implementation goals
are simplicity, efficiency, portability, and low embedding cost. The result
is a fast language engine with small footprint, making it ideal in
embedded systems too.
Lua is designed and implemented by a team at Tecgraf, the Computer
Graphics Technology Group of PUC-Rio (the Pontifical Catholic University
of Rio de Janeiro in Brazil). Tecgraf is a laboratory of the Department
of Computer Science.
CONFIGURATION
=============
Everything builds with gmake now.
By default the clib2-ts flavour is built with dynamic library support.
Edit the src/luaconf.h file and Makefiles to customize Lua to your
particular project. Some projects may not require dynamic library
loading and could just use simply clib2 or newlib for example.
INSTALLATION
============
Installation into your SDK varies depending on what flavour of Lua
you want to use for your project. Here is what to do to install the
standard Lua (clib2-ts with dynamic library support) into your SDK:
Copy src/lua and src/luac binaries to SDK:Local/C
Copy src/liblua.a to SDK:Local/clib2/lib
Copy src/#?.(h|hpp) SDK:Local/common/include
HISTORY
=======
5.1-2 - updated to SDK 51.22
- updated to use clib2 1.200
- updated readme
5.1-1 - ported to AmigaOS using standard build system (use gmake)
- added preliminary dynamic library support
- not publically released
5.0.2 - ported to AmigaOS with custom Makefile et al
| |