3 ms·
The front page describes three distinct use cases for Terra. While criticism is welcome, it certainly appears that you are missing the uses for Terra. Consider
by vbit 11y ago
The front page describes three distinct use cases for Terra.
While criticism is welcome, it certainly appears that you are missing the uses for Terra. Consider the third case - you can write Terra functions (cleaner syntax than C) and use Lua as a meta-programming language that produce more Terra functions (vastly superior to C macros) which then compile down via LLVM to machine code. Your final code has no Lua pieces.
- andrewmcwatters 11y agoYou can cover literally the first two things with LuaJIT. Point three covers the fact that it can be used as "a stand-alone low-level language." So really, the only "advantage" this software has is that it is a different language. That's not an advantage on its own. If you're using Lua to not use Lua, you never wanted to use Lua to begin with!
- vbit 11y ago> You can cover literally the first two things with LuaJIT. Not at all. You don't have explicit control over generating machine code in LuaJIT. OTOH all Terra functions - whether dynamically generated or pre-written - will get compiled to machine code via LLVM. So it's explicit, i.e. more work, but more predictable. Arguably Terra code generation will cover more scenarios - consider some code paths may not be JITable at all by LuaJIT (due to NYI) but if you can generate a Terra function, you're guaranteed machine code. > If you're using Lua to not use Lua, you never wanted to use Lua to begin with! You're using Lua as a meta-programming language for Terra. If you know Lua, it could be a lot more convenient than using custom or archaic meta-programming languages.