lua-users home
lua-l archive

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


Because vanilla Lua and LuaJIT work very differently.  One is a
register based virtual machine, the other translates to assembler for
the CPU.

Lua source to Lua bytecode compilation loses some information about
the code structure. Nothing that the Lua VM would need, since it only
executed the code, but LuaJIT uses that information.

Does LuaJIT even use another bytecode format? I always thought it
would translate source directly into assembler.

On Sun, Dec 4, 2011 at 6:53 PM, Antonio Scuri <scuri@tecgraf.puc-rio.br> wrote:
>> Couldn't you just embed the Lua source code instead?
>
>  Yes, that's also an option and my next question. But I would like to
> understand better that incompatibility.
>
> Thanks,
> Scuri
>
>> -----Original Message-----
>> From: Miles Bader [mailto:miles@gnu.org]
>> Sent: domingo, 4 de dezembro de 2011 03:44
>> To: Antonio Scuri
>> Cc: Lua mailing list
>> Subject: Re: LuaJIT and bytecode
>>
>> "Antonio Scuri" <scuri@tecgraf.puc-rio.br> writes:
>> >   In some libraries we embed Lua code using "luac.exe" then "bin2c.lua".
>> >
>> >   This seems to be incompatible with LuaJIT and I would like to
>> > understand a little bit more about that.
>>
>> Luajit uses a different bytecode format.
>>
>> Couldn't you just embed the Lua source code instead?  It works with
>> anything, and seems even easier to handle than bytecode.
>>
>> [Maybe using source code would be undesirable for a super-tiny embedded
>> app, which wouldn't want the extra size of the compiler, but if you're
> using
>> luajit that suggests this isn't your case.]
>>
>> -miles
>>
>> --
>> Run away!  Run away!
>
>