Discussion:
Resend: A High Performance Bridge for Lua and Java in Android
奥斯陆君王
2018-09-21 13:18:37 UTC
Permalink
Because the first one is gibberish, so I resend the email.

Luadroid is a high performace bridge for executing java code in lua in
amdroid or exectuting lua code in android. Yeah, you can use luajava or
luaj on other platforms. Its syntax is very similar to the original java
syntax.

It supports try catch, synchronized, multi-thread, very simple cross-thread
communication (auto-copied upvalues and a table like usedata to get and put
variables ), autoboxing and auto-unboxing, class extension, interface
implementation, class definition and so on. Method deduction and auto table
conversion is supported also. Generic info will be considered during table
conversion.

If there is no table conversion or function conversion, it will be only 4-5
times slower than java code at most even though the code is jited.If the
java code is not jited, the consumption is ignorable. Class extension and
definition are pretty heavy operations cause they need to generate a dex
file and load it into the classloader.

GC for objects will be performed once the script is executed. GC for
outdated thread is performed in javs gc thread.Note that due to Android O
changes, it's no longer possible to test whether a thread is alive by
pthread_kill so I use tgkill instead.However, in some extreme and weird
cases(too many threads created and destoryed), it's not safe actually.

Both lua and luajit are supported.And the java type long will lose no
precision in luajit cause when it will lose its precision, it will be
converted to a usedata that overrides common mathmetic operators.

It's my personal project,so I can't make sure there's no bug even though I
have performed a lot of tests. If you find any bugs or have any advice,
please contact me.

For more information see https://github.com/qtiuto/lua-for-android
Ką Mykolas
2018-09-21 14:35:02 UTC
Permalink
$ diff ./first.txt ./second.txt
1,2c1,3
< Luadroid is a high performace bridge for executing java code in lua in
amdroid or exectuting lua code in android. Yeah, you can
< use luajava or luaj on other platforms. Its syntax is very similar to the
original java syntax.
---
Post by 奥斯陆君王
Because the first one is gibberish, so I resend the email.
Luadroid is a high performace bridge for executing java code in lua in
amdroid or exectuting lua code in android. Yeah, you can use luajava or
luaj on other platforms. Its syntax is very similar to the original java
syntax.

o_0 What do You mean by "gibberish"?
Post by 奥斯陆君王
Because the first one is gibberish, so I resend the email.
Luadroid is a high performace bridge for executing java code in lua in
amdroid or exectuting lua code in android. Yeah, you can use luajava or
luaj on other platforms. Its syntax is very similar to the original java
syntax.
It supports try catch, synchronized, multi-thread, very simple
cross-thread communication (auto-copied upvalues and a table like usedata
to get and put variables ), autoboxing and auto-unboxing, class extension,
interface implementation, class definition and so on. Method deduction and
auto table conversion is supported also. Generic info will be considered
during table conversion.
If there is no table conversion or function conversion, it will be only
4-5 times slower than java code at most even though the code is jited.If
the java code is not jited, the consumption is ignorable. Class extension
and definition are pretty heavy operations cause they need to generate a
dex file and load it into the classloader.
GC for objects will be performed once the script is executed. GC for
outdated thread is performed in javs gc thread.Note that due to Android O
changes, it's no longer possible to test whether a thread is alive by
pthread_kill so I use tgkill instead.However, in some extreme and weird
cases(too many threads created and destoryed), it's not safe actually.
Both lua and luajit are supported.And the java type long will lose no
precision in luajit cause when it will lose its precision, it will be
converted to a usedata that overrides common mathmetic operators.
It's my personal project,so I can't make sure there's no bug even though I
have performed a lot of tests. If you find any bugs or have any advice,
please contact me.
For more information see https://github.com/qtiuto/lua-for-android
Sean Conner
2018-09-21 21:35:05 UTC
Permalink
Post by Ką Mykolas
$ diff ./first.txt ./second.txt
1,2c1,3
< Luadroid is a high performace bridge for executing java code in lua in
amdroid or exectuting lua code in android. Yeah, you can
< use luajava or luaj on other platforms. Its syntax is very similar to the
original java syntax.
---
Post by 奥斯陆君王
Because the first one is gibberish, so I resend the email.
Luadroid is a high performace bridge for executing java code in lua in
amdroid or exectuting lua code in android. Yeah, you can use luajava or
luaj on other platforms. Its syntax is very similar to the original java
syntax.
o_0 What do You mean by "gibberish"?
When I received the first email, it came as one long paragraph spanning
the entire width of the window, making it hard to read.

-spc

Loading...