Re: Advice needed: book on interpreter construction

lhf@csg.uwaterloo.ca (Luiz Henrique de Figueiredo)
15 Jan 1996 20:59:40 -0500

          From comp.compilers

Related articles
Advice needed: book on interpreter construction ibmstuff@sccsi.com (1995-12-30)
Re: Advice needed: book on interpreter construction brianmcg@interaccess.com (1995-12-31)
Re: Advice needed: book on interpreter construction ph@anweald.exnet.co.uk (Patrick Herring) (1996-01-12)
Re: Advice needed: book on interpreter construction martelli@cadlab.it (1996-01-12)
Re: Advice needed: book on interpreter construction bernecky@eecg.toronto.edu (1996-01-14)
Re: Advice needed: book on interpreter construction lhf@csg.uwaterloo.ca (1996-01-15)
Re: Advice needed: book on interpreter construction fburton@nyx10.cs.du.edu (1996-01-27)
Re: Advice needed: book on interpreter construction sy73343@vantage164.vantage.fmr.com (1996-01-31)
| List of all articles for this month |
From: lhf@csg.uwaterloo.ca (Luiz Henrique de Figueiredo)
Newsgroups: comp.compilers
Date: 15 Jan 1996 20:59:40 -0500
Organization: Computer Systems Group, University of Waterloo
References: 95-12-157 96-01-016
Keywords: interpreter

ibmstuff@sccsi.com (David PC Wollmann) writes:
>I need to write a simple interpreter and a language as part of a
>database conversion program. ...


Alex Martelli <martelli@cadlab.it> wrote:
>Why not just grab a simple readymade language and interpreter from
>somewhere on the net and just use it, possibly with tweaks if you
>really need some? You can hardly beat such wholesale reuse when


try Lua (see below).


* What is Lua?
    Lua is a simple, yet powerful, language for extending applications.
    Lua has been developed by TeCGraf, the Computer Graphics Technology Group
    of PUC-Rio, the Pontifical Catholic University of Rio de Janeiro, Brazil.
    Dozens of industrial products developed by TeCGraf use Lua.


* Some features of Lua
    + a simple, pascal-like, syntax
    + powerful data description constructs (e.g., associative arrays)
    + user-controlled type constructors
    + fallbacks for extending the language in unconventional ways (e.g.,
        inheritance, overloading)
    + garbage collection
    + Lua programs are compiled into bytecodes, which are then interpreted
    + portable, written in ANSI C (runs in Unix, DOS, Windows, Mac, Cray, ...)


* Availability
    In Brazil: ftp://ftp.icad.puc-rio.br/pub/lua/lua-2.2.tar.gz
    In Canada: ftp://csg.uwaterloo.ca/pub/lhf/lua/lua-2.2.tar.gz
    Home page: http://www.inf.puc-rio.br/~roberto/lua.html


* Legal matters
    Lua is freely available for both academic and commercial purposes.
    Lua is not in the public domain; TeCGraf keeps its copyright.
    See COPYRIGHT.


* Changes since version 2.1 (current version is 2.2)
    + functions now may be declared with any "lvalue" as a name
    + garbage collection of functions
    + support for pipes


* Changes since version 1.1
    + object-oriented support
    + fallbacks
    + simplified syntax for tables
    + many internal improvements


* Installing
    To make, simply type domake.
    If make succeeds, you get an interpreter in ./bin/lua.
    If make fails, please let me know.
    The libraries are in ./lib. The include files are in ./include.
    You don't need the other directories for development.
    There is a reference manual in ./doc, and tests and examples in ./test.
    This distribution is biased towards SunOS 4 with gcc but it is simple to
    change the Makefiles for other systems, if necessary.
    If you are running SunOs, type also "domake dynamic" to build shared
    libraries in ./lib.
    If your system does not have "popen", then change ./clients/lib/Makefile.


* Contacting the authors
    Send your comments, bug reports and anything else to lhf@icad.puc-rio.br.
    Please send me email if you download Lua so that we can know how far it goes.
--
Luiz Henrique de Figueiredo lhf@csg.uwaterloo.ca
Computer Systems Group, Department of Computer Science, University of Waterloo
Waterloo, Ontario, Canada N2L 3G1 (519) 885-1211 x5517, fax (519) 746-5422
--


Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.