lua-languages
Languages that compile to Lua
Lua is famously and deceptively simple and enables many different programming paradigms. Like Javascript, it's possible to make it shine by adding more specialized syntax. I started this list to document the languages I found looking for an ML/F# like language.
Pull requests welcome!
Compile to bytecode
An intriguing new avenue of development started by Rochus Keller for an Oberon to LuaJIT bytecode compiler provides an elegant way of leveraging the ecosystem:
- https://github.com/rochus-keller/Oberon/ Oberon compiler
- https://github.com/franko/luajit-lang-toolkit A Lua to LuaJIT bytecode compiler/toolkit to enable different language frontends and different compilation backends.
- https://github.com/rochus-keller/LjTools LuaJIT tools, a Qt5 GUI parser, browser, assembler and test VM for LuaJIT 2.0 bytecode
VM forks
- https://github.com/mingodad/ljs ljs JS-like syntax with modified VMs for PUC Lua, LuaJIT and RaptorJIT
Tier 1
For lack of a better designator, these projects are well known, or compiles existing languages
- http://moonscript.org/ Moonscript, indentation based syntax, based on coffeescript
- http://haxe.org Haxe, strongly typed OO language transpiler with multiple backends
- https://github.com/yanghuan/CSharp.lua C# transpiler
- https://github.com/theFox6/LuaVenusCompiler Transpiler for Venus, a Go-like language,
- https://github.com/gijit/gi translates Go into Lua. It targets LuaJIT for 64-bit integer support.
Typed Lua
- https://github.com/devcat-studio/kailua KaiLua
- https://github.com/pallene-lang/pallene Pallene, friendly fork of Titan
- https://github.com/titan-lang/titan-v0 Titan
- https://github.com/ggVGc/Tua Tua
- https://github.com/teal-language/tl Teal
Binary compiled Lua-like
- https://github.com/dibyendumajumdar/ravi and http://ravilang.github.io/ Ravi
- http://terralang.org/ Terra
- https://github.com/edubart/nelua-lang Nelua, Natively Extensible Lua
Strongly typed
- https://github.com/rochus-keller/Oberon/ Oberon
- https://github.com/wu-lang/wu Slightly Rusty with classes and traits
Javascript
- https://github.com/PaulBernier/castl Javascript transpiler
- https://github.com/seanjensengrey/colony-js Javascript transpiler
- https://github.com/saharNooby/lua-js-syntax Javascript inspired syntax
TypeScript
- https://github.com/roblox-ts/roblox-ts
- https://github.com/ASDAlexander77/TypeScriptLua
- https://github.com/TypeScriptToLua/TypeScriptToLua
Functional
- https://amulet.works An ML-like functional programming language that transpiles to lua
- https://github.com/kindl/Hypatia Hypatia, an ML-like language that transpiles to Lua
- https://github.com/ptol/oczor Haskell-like language that compiles to Lua, Javascript, Emacs lisp and Ruby
- https://github.com/iitalics/Lua-ML Basic ML language
- https://github.com/hengestone/pumpkin ML-like language with an experimental Lua back-end
Lisp
There are so many Lisp variants, the deserve their own category.
- https://squiddev.github.io/urn/ Urn, Lisp dialect, extensive libraries
- https://github.com/bakpakin/Fennel Lisp compiler and library
- https://github.com/meric/l2l l2l (lisp) superset of Lua
- https://github.com/larme/hua Hua, Lisp dialect
- http://leafo.net/moonlisp/ Lisp implemented in Moonscript
- https://github.com/sctb/lumen Small Lisp
- https://github.com/bullno1/mLisp
- https://github.com/WeirdConstructor/lal Scheme
- https://github.com/adamrk/scheme2luac Scheme
C
Python
Ruby
Unique
- https://github.com/presidentbeef/brat Brat, using MoonJIT
- https://github.com/richardhundt/shine Shine, using TvmJit
- https://github.com/apotheon/vortex Vortex
- https://github.com/tommo/yu Yu
Other
- https://github.com/marcoonroad/moonforth Forth to Lua transpiler