Java Implementation of Lua Language

2009-12-11

Just a quick note for those that don’t follow me on twitter:

I have recently announced the open sourcing of Jill: Java Implementation of Lua Language. It’s a little thing I (mostly) wrote 3 years ago, and it’s taken far too long to get it open sourced, but it’s open now.

No doubt it will prompt me to write one or two blog posts on JME type things.

5 Responses to “Java Implementation of Lua Language”

  1. Gareth Rees Says:

    Your link is broken. Should be jillcode.googlecode.com.

  2. drj11 Says:

    Of course. Ta.

    Fixed.

  3. mathew Says:

    How good is Lua, given that you seem to pretty much exclusively use Python instead?

  4. Gareth Rees Says:

    Lua and Python (considered as concrete implementations, not as abstract languages) have different design purposes. Lua — scripting extensions, very small, easy to embed, few dependencies. Python — batteries included, stands alone.

    Maybe David’s doing more of the kind of things that Python is designed for, and fewer of the things that Lua is designed for?

  5. drj11 Says:

    @mathew: Basically, what Gareth said.

    The brochure blurb can make Python and Lua sound quite similar, both dynamic languages, garbage collected, table and vector types, objects, and a flexible meta-object protocol. Both extensible in C, and embeddable.

    But Gareth’s right, the implementations set the tone. Lua is far easier to embed in an application (as long as it’s written in C, (or Java if you use Jill)), but Python is far better for building standalone apps (or even most scripts).

    As an abstract language I think I slightly prefer Lua. Lambda works, assigning to closed over variables works, it has proper coroutines. I also slightly prefer the “everything is a table” approach of Lua: foo.bar is the same as foo[‘bar’].


Leave a comment