6 ms·
Terra uses Lua as a metaprogramming language, while Pallene/Titan use Lua as a scripting language. Terra is designed for high performance numerical computing.
by hugomg 8y ago
Terra uses Lua as a metaprogramming language, while Pallene/Titan use Lua as a scripting language.
Terra is designed for high performance numerical computing. As you mentioned, it has no garbage collector, uses C-like datatypes and its executables are completely detached from the Lua runtime.
Pallene, on the other hand, is all about being able to seamlessly interoperate with Lua at run-time. It is possible to directly manipulate Lua tables and functions from a Pallene program. From the point of view of Lua, Pallene modules can be loaded as a C extension module would, except that Pallene is designed to integrate even better with Lua (sharing its garbage collector and having better C API performance).
As the other commenter pointed out, we are currently compiling down to C. However, it is possible that we could switch to LLVM IR in the future.