Coal is a small language built in lua with a full Lexer, Parser, and Interpreter. The language was created for fun and mimics Javascript currently but is imagined to be a cross between C#/Java and Lua.
- Head to the most recent release
- Download and open the Coal.rbxmx file in Roblox Studio
- Start coding!
local Coal = require(Coal)(options)
Calling the Coal function allows a Scope table
local data = Coal:interpret(code)
interpret will return data with the table listed below
data.tokens holds the code tokens that are handed to the Parser
data.AST is the Abstract Syntax Tree created by the Parser
data.globalScope is the Global scope of the code (data.scopes["GLOBAL"] shorthand)
data.scopes carries all scopes
data.times has the Lexer, Parser, and Interpreter time starts, ends, and elapsed