lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]




On 06/10/16 08:08 AM, Miroslav Janíček wrote:
On 5 Oct 2016, at 18:15, Hisham <h@hisham.hm> wrote:

I have used both LuaJava and LuaJ as recently as last year.
Source-compatibility (or at least a compatibility layer) would be
welcome.
I have got a rudimentary version of LuaJava’s Lua API (i.e., the one that allows you to get access to Java classes via reflection), so at least on that front it should be possible to run Lua scripts that “require luajava" sometime soon. Although I realise that this is just one half of the story.

It seems there may be enough people that live between Lua and the JVM on this list, so please let me ask:

   “How do you decide between LuaJ and LuaJava?”

They seem to be built with different use-cases in mind:

  * LuaJava is a C-Lua first, and JVM-Lua second. Used when we have
    C libraries and yet want to have access to a JVM. (So the JVM
    world is in fact exposed as a library from Lua.)

  * LuaJ is a JVM-Lua. Used when we need to live on the JVM, but
    want to use the Lua programming language for scripting. Although
    as far as I’m aware LuaJ does not provide a Lua API to the
    JVM.

LuaJ doesn't have states so there's no sandboxing of the string (and function, number, etc) metatable.


(Rembulan is very much like LuaJ in this aspect, but with LuaJava’s Lua API, it would also expose the JVM universe as a library in Lua.)

Is this the correct understanding? I have used LuaJ quite extensively in the past, but LuaJava I have never even (consciously) run on my machine.

I’m trying to figure out the level of compatibility required to give users with significant investments into their LuaJava and/or LuaJ setups the option to give Rembulan a try.

   M.

PS. If this is not the right place to ask these questions, my apologies! I realise that most of the Lua community probably doesn’t care much about the JVM. Yet ;)

--
Disclaimer: these emails may be made public at any given time, with or without reason. If you don't agree with this, DO NOT REPLY.