This is a transpiler. Luau is a completely different language and runtime.
It’s part of the big three Lua syntax flavours: Teal (Typescript-y), Fennel (Lisp-y), Moonscript (Ruby-ish)
embedding-shape 35 minutes ago [-]
> Fennel (Lisp-y),
For all (most?) intents and purposes, Fennel is lisp-language, not just lisp-y. It's Clojure-y if anything, which makes sense considering the creator of Fennel.
shevy-java 2 hours ago [-]
Hisham is one of the key devs there. He started GoboLinux, htop and some more.
Personally I am not the biggest fan of lua as it really is such a light language in every sense of the word (meaning, syntax too and features - too light IMO). But it's good that creativity keeps pushing things forward.
larme 2 hours ago [-]
musl + lua + c library + all lua codes can produce single static binary for linux which I utilize a lot.
mjmas 50 minutes ago [-]
I also use it a bit for almost-static (i.e. only linking msvcrt and friends) binaries on windows.
I have a packer that compiles a customised lua binary along with precompiled bytecode for each library and it works fairly well.
oblio 2 hours ago [-]
How well does Lua plug into Rust libraries? Also how good is Lua for UIs?
petcat 1 hours ago [-]
I've used Lua extensively with Rust via the mlua library and it's excellent and full-featured.
I ported a mod I made to Teal when adding a feature was taking me way too long in regular Lua to get working correctly (I freely admit that I'm seriously crippled in my ability to write correct algorithms without being able to define types that I can enforce). This was before I had ever tried to use an LLM to code before.
Now that LLMs are a common thing for coding, modding communities (which in practice have a large number of people using Lua since quite a lot of the most widely modded games use Lua for mods) are having to adapt a bit to handle the influx of a huge number of mods from people who have never programmed before, which I tend to view as a good thing in the long run, but right now LLMs seem to be rather abysmal at writing reasonable Lua. There's a meme (in the original sense of the word) that you can tell when a mod is LLM generated because it will use pcall in ridiculous ways, seemingly because it's a lot quicker to abuse it as a retroactive control flow mechanism than to go back and add proper checks up front (and probably restructure the code in the process). Teal doesn't fully solve the underlying issue of LLMs apparently being very poorly trained on Lua but it does at least give a pretty good way of statically enforcing what the actual types it should be using are.
HexDecOctBin 4 hours ago [-]
What is your purpose in the new age of AI?
lifeisloving 26 minutes ago [-]
Probably half ass web platforms nobody uses.
sgt 35 minutes ago [-]
Burn!
larme 2 hours ago [-]
so true
arshxyz 4 hours ago [-]
What is the purpose of gcc in the new age of AI? Can't you ask your agent to build a compiler if you want to run Hello World?
4 hours ago [-]
pansa2 2 hours ago [-]
What difference does AI make? Teal simply gives you the option to add static types to your Lua code, to enable additional compile-time correctness checks.
Surely that’s useful, no matter whether you’re writing the code yourself or having an agent do it.
shevy-java 2 hours ago [-]
Not everyone uses AI though. Some do, some don't. I don't.
Though, I am not really in the lua camp either. But I had to comment on the "only AI counts" transfigurative statement.
gkbrk 1 hours ago [-]
AI works much better when it gets immediate feedback from a good type checker
interpol_p 1 hours ago [-]
The main thing is getting feedback. I've been doing some intense agent iteration on Lua projects, and so long as the error output is clear and it's easy for the harness to restart/inspect/stream logs it seems to do very well with Lua
In fact, I'd say it's more "fun" watching an agent work on something in Lua as the iteration loop is tighter: more restarts, more feedback, instant running. When I deal with typed languages (in my case, Swift) the feedback loop is dragged-out by the compile time which makes the whole process feel slower
rfgplk 3 hours ago [-]
Controversial opinion, but new programming languages are desperately needed, _especially_ in the age of LLMs. Simply put, not all languages provide equal expressiveness, even if they're all Turing complete.
andsoitis 48 minutes ago [-]
that's not controversial to me. Programming languages that prioritize LLM creation/editing/reasons over it, while making it easy for humans to review and edit, but not being the primary author of the literal code.
mjmas 4 hours ago [-]
Teal isn't particularly new. First commit is Jan 2019
computerfriend 4 hours ago [-]
Programming languages are useful?
4k93n2 2 hours ago [-]
one needs an internet connection and a huge amount of energy to run, the other doesnt
subversiontaco 3 hours ago [-]
I agree with this sentiment.
LLMs are already so incredibly capable and will only get better and faster with time.
Learning a new programming language just feels redundant now.
lifeisloving 20 minutes ago [-]
Learning a new programming language and getting good at it is extermely satisfying. I get no satisfaction out of AI writing code I dont understand, its quite the opposite actually.
It will be people who understand things and experiment still that will succeed in the world of AI. People who are meat proxies are screwed its already making you lazy and probably giving your brain a disease we haven't named yet, a type 2 diabetes-esque of the brain.
It’s part of the big three Lua syntax flavours: Teal (Typescript-y), Fennel (Lisp-y), Moonscript (Ruby-ish)
For all (most?) intents and purposes, Fennel is lisp-language, not just lisp-y. It's Clojure-y if anything, which makes sense considering the creator of Fennel.
Personally I am not the biggest fan of lua as it really is such a light language in every sense of the word (meaning, syntax too and features - too light IMO). But it's good that creativity keeps pushing things forward.
I have a packer that compiles a customised lua binary along with precompiled bytecode for each library and it works fairly well.
https://github.com/mlua-rs/mlua
2. I don't see anything wrong with coding for purely artistic purposes?
3. Presumably a static type checker would be quite helpful for LLMs, since it would help them catch lots of their mistakes.
[0]: https://github.com/teal-language/tl/blob/main/CHANGELOG.md#0...
Now that LLMs are a common thing for coding, modding communities (which in practice have a large number of people using Lua since quite a lot of the most widely modded games use Lua for mods) are having to adapt a bit to handle the influx of a huge number of mods from people who have never programmed before, which I tend to view as a good thing in the long run, but right now LLMs seem to be rather abysmal at writing reasonable Lua. There's a meme (in the original sense of the word) that you can tell when a mod is LLM generated because it will use pcall in ridiculous ways, seemingly because it's a lot quicker to abuse it as a retroactive control flow mechanism than to go back and add proper checks up front (and probably restructure the code in the process). Teal doesn't fully solve the underlying issue of LLMs apparently being very poorly trained on Lua but it does at least give a pretty good way of statically enforcing what the actual types it should be using are.
Surely that’s useful, no matter whether you’re writing the code yourself or having an agent do it.
Though, I am not really in the lua camp either. But I had to comment on the "only AI counts" transfigurative statement.
In fact, I'd say it's more "fun" watching an agent work on something in Lua as the iteration loop is tighter: more restarts, more feedback, instant running. When I deal with typed languages (in my case, Swift) the feedback loop is dragged-out by the compile time which makes the whole process feel slower
LLMs are already so incredibly capable and will only get better and faster with time.
Learning a new programming language just feels redundant now.
It will be people who understand things and experiment still that will succeed in the world of AI. People who are meat proxies are screwed its already making you lazy and probably giving your brain a disease we haven't named yet, a type 2 diabetes-esque of the brain.