InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now. Learn more →
Tl Alternatives
Similar projects and alternatives to tl
-
-
InfluxDB
InfluxDB – Built for High-Performance Time Series Workloads. InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now.
-
-
Oberon
Oberon parser, code model & browser, compiler and IDE with debugger, and an implementation of the Oberon+ programming language
-
-
-
-
Wren
The Wren Programming Language. Wren is a small, fast, class-based concurrent scripting language.
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
-
terra
Terra is a low-level system programming language that is embedded in and meta-programmed by the Lua programming language.
-
-
nelua-lang
Minimal, efficient, statically-typed and meta-programmable systems programming language heavily inspired by Lua, which compiles to C and native code.
-
-
Smalltalk
Parser, code model, interpreter and navigable browser for the original Xerox Smalltalk-80 v2 sources and virtual image file (by rochus-keller)
-
-
Prosody IM
IMPORTANT: due to a drive failure, as of 13-Mar-2021, the Mercurial repository had to be re-mirrored, which changed every commit SHA. The old SHAs and trees are backed up in the vault branches. Please migrate to the new branches as soon as you can.
-
-
-
-
-
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
tl discussion
tl reviews and mentions
-
The Teal Programming Language
Teal creator here! Thank you for the kind words, super happy to see people being productive with it!!
On your wishlist items:
1. There are a few third-party projects that bundle Lua code. One that comes to mind is https://lrocket.codeberg.page/ — I don't know if this functionality should be brought into Teal itself, it sounds to me like something better left to the surrounding tooling?
2. Unfortunately those annoyances are part of the heterogeinity of the Lua ecosystem, but Teal tries to paper over them using the compat53 library (which, granted, is not available everywhere if you want to do a pure-Lua deployment on existing Lua environments). The --gen-target and --gen-compat flags should still help some, hopefully!
3. Not sure what you mean there -- you mean adding chunks of untyped Lua _in the same file_? I think that if you have a json.lua and a json.d.tl file, then it should use the definition file only and leave the .lua file alone. At least that's the intended behavior!
4. That's up to GitHub :) Last time I checked their docs I think they want something like 100 or 200 projects using the language for considering adding native highlighting for it on the website. But you can add a .gitattributes file to the root of your repository like this https://github.com/teal-language/tl/blob/master/.gitattribut... and at least it will display .tl files with .lua highlighting.
Again, thank you so much for the feedback!
-
Lune (Rust-based Luau runtime) 0.9.0 released
Yep. Luau has an LSP so you should be able to get all that.
There is no support for Luau in Love2D though. You would have to author your code in Teal (typed lua to lua compiler) and then compile that to Lua to be run in Love: https://github.com/teal-language/tl
You can get the Lua LSP working in Love2D with full completion support by the way. The Lua LSP has 3rd party libraries included in it. You can see all the preinstalled ones here: https://github.com/LuaLS/lua-language-server/tree/master/3rd
Support for them as built-ins will be removed at some point though. But you can always add them yourself: https://github.com/LuaLS/lua-language-server/wiki/Settings#w... using the files from here: https://github.com/LuaCATS/love2d/
It looks like the easiest way to support them is using a `.luarc.json` file though: https://github.com/LuaLS/lua-language-server/wiki/Configurat...
Here is a project that is already set up with a config file that you should be able to just copy: https://github.com/jonasgeiler/love2d-joystick-tester/blob/m...
- Free high-performance cross-platform game engine
- Luon programming language combines concepts from Oberon and Lua
-
Ask HN: What are you working on (August 2024)?
I need to clean up this page but I'm working on a local(-ish) book collection tool (calling it Livtet for "book head" in Haitian Kreyol). https://www.jacky.wtf/projects/livtet/ has some notes but https://man.sr.ht/~jacky/livtet is much better. It's been fun using Lua to externalize a lot of logic (and I'm looking into using https://github.com/teal-language/tl because I love me some typing.
Outside of that, I've been blogging a lot more (https://www.jacky.wtf/essays/ - August looks so full, ha) and now I'm writing about things I'm reading too (https://www.jacky.wtf/links/). Been doing this to try to ween off social media and rely on places like this to share stuff.
- Pallene: A statically compiled companion language for Lua
- Teal: TypeScript for Lua
-
QuickJS, the Next Generation: a mighty JavaScript engine
Teal (https://github.com/teal-language/tl) is the closest we have from a "TypeScript for Lua". It is natively supported by many projects now, including game engines such as the Bevy scripting plugin and Defold.
-
What do I think about Lua after shipping a project with 60k lines of code?
I don't think Teal can be total. Lua is super expressive and you would need to get deep into dependent types and whatnot to caption a fraction of the power of its types.
> Some Lua libraries use complex dynamic types that can't be easily represented in Teal. In those cases, using any and making explicit casts is our last resort.
https://github.com/teal-language/tl/blob/master/docs/tutoria...
Personally if I paid the cost of having an extra compile step then I would rather wish for some serious type safety like what Elm or Reason provide. But then you end up with a different language.
I agree though that for your use case of making complicated libraries Teal might be actually good fit.
I was going to argue that Luau is superior anyway if you really can't cope with annotations but obviously if you want to make libraries for lua users that doesn't work. (Though I guess you could technically compile down from Luau, just not sure if anyone has ever bothered.)
-
Ravi is a dialect of Lua, with JIT and AOT compilers
it's based off MIR, does it have something to do with https://mlir.llvm.org/ ?
for typed lua, there is another effort https://github.com/teal-language/tl in addition to the mentioned typescript approach: https://github.com/andremm/typedlua
-
A note from our sponsor - InfluxDB
www.influxdata.com | 16 Jun 2025
Stats
teal-language/tl is an open source project licensed under MIT License which is an OSI approved license.
The primary programming language of tl is Lua.