Hacker News new | ask | show | jobs
by hisham_hm 1945 days ago
Hi there! Hisham from Teal here.

Yeah, Teal was motivated by my experiences developing LuaRocks, the Lua package manager, which is also a significant pure-Lua application, as well as other experiences working with large Lua codebases.

We've been making some good progress on the compiler and the overall tooling (VS Code and Vim plugins, soon general LSP), and I can say that the overall development experience in Teal already feels smoother than pure Lua thanks to the compiler assistance.

My intention with Teal is to be able to support use-cases such as yours, Love2D, and so on. In my FOSDEM talk earlier this month ( https://www.youtube.com/watch?v=OqXbnaDR8QY ) I mentioned some of the challenges involved in supporting more existing Lua codebases, and how I think we'll need to add a bit of a metaprogramming layer in order to support more smoothly things like homegrown class systems (like the one I see in Grid, in the very first example in your homepage). So I would love to get feedback as we start to explore this space. I want Teal to remain a minimalistic and pragmatic project, so the goal is not to develop a super-general meta-programming system, but one that solves concrete problems Lua developers face when integrating Teal.

3 comments

Hey! Just want to say kudos for your work. I've been flirting with using Lua for some projects, and from my research, I feel like Lua as a language and an ecosystem is widely underappreciated. Teal seems well thought out and something that might pull more devs to the Lua space.
Thank you! Appreciate the words of encouragement! :)
I'm watching Teal closely! It seems like an exceptional piece of software, and I appreciate your work in the Lua ecosystem.

We'll continually be making efforts to push through our documentation and marketing struggles, so I hope to provide some feedback later this year when we've made the time to try implementing Teal as a solution.

Thanks, Hisham!

Would Teal be a good fit for transpiling Lua into SPIR-V intermediate language?

If it is possible, one could run same language across system level, game logic level and GPU shader level. This would be fantastic because you often don't know at which level it would run fastest. When algorithm at game logic level is not fast enough it would be possible to move preparation stage to compile-time (prebaking) and parallelizable sections into GPU, all by using same basic language.