lights FAQ Forum github.com/luapower/terra2
This package
terra2

Misc
ace.js
allegory.ro
bearssl
csv
daemon
dollar
font_db
fonts-amiri
fonts-awesome
fonts-dejavuserif
fonts-fireflysung
fonts-fixedsys
fonts-ionicons
fonts-material-icons
fonts-noto-emoji
fonts-open-sans
http
jsmin
libtls
libtls_bearssl
lx
minizip2
resty-core
resty-lrucache
resty.http
resty.mail
resty.string
socket2
terra2
uri
uuid
website
x-widgets
xlsxwriter

Terra implementation in Lua based on lx and llvm.

Status

Work-in-progress

Goals

  • fix terra bugs and warts that nobody seem to be able or willing to fix in the original implementation, and I’m unwilling to touch that C++ mess.
    • make typechecking lazy again.
    • make overloads automatic again.
    • var decl shadowing like Lua.
    • fix __for semantics.
    • macro syntax.
    • make ^ sugar for pow() and add a xor operator.
  • add some needed features:
    • struct, field & func annotations syntax.
    • nested functions with lexical scoping like gcc would really make life easier.
    • ternary operator syntax? : can’t be used, and iif() macro is meh…
    • should we add ++, –, +=, -=, *= /=, ^=, >>=, <<= or is it too much?

TODO

  • build libclang into llvm.dll
  • extend LLVM/libclang C APIs
  • terra parser
  • terra typechecker
  • llvm code gen
  • better compile-time error tracebacks
  • terra-C interface
  • terra-Lua interface
  • build & link API
  • debug symbols
  • unit tests
  • type caching API incl. generated code

Last updated: 16 days ago | Edit on GitHub

Package:terra2
Pkg type:Lua
Version: 7b26168
Last commit:
License: Public Domain

Requires: none

Required by: none


Top