2 package = "metalua-compiler"
5 url = "git://git.eclipse.org/gitroot/koneki/org.eclipse.koneki.metalua.git",
10 summary = "Metalua's compiler: converting (Meta)lua source strings and files into executable Lua 5.1 bytecode",
12 This is the Metalua copmiler, packaged as a rock, depending
13 on the spearate metalua-parser AST generating library. It
14 compiles a superset of Lua 5.1 into bytecode, which can
15 then be loaded and executed by a Lua 5.1 VM. It also allows
16 to dump ASTs back into Lua source files.
18 homepage = "http://git.eclipse.org/c/koneki/org.eclipse.koneki.metalua.git",
23 "lua ~> 5.1", -- Lua 5.2 bytecode not supported
24 "checks >= 1.0", -- Argument type checking
25 "luafilesystem >= 1.6.2", -- Cached compilation based on file timestamps
26 "readline >= 1.3", -- Better REPL experience
27 "metalua-parser == 0.7.2", -- AST production
33 ["metalua"] = "metalua.lua",
34 ["metalua.compiler.bytecode"] = "metalua/compiler/bytecode.lua",
35 ["metalua.compiler.globals"] = "metalua/compiler/globals.lua",
36 ["metalua.compiler.bytecode.compile"] = "metalua/compiler/bytecode/compile.lua",
37 ["metalua.compiler.bytecode.lcode"] = "metalua/compiler/bytecode/lcode.lua",
38 ["metalua.compiler.bytecode.lopcodes"] = "metalua/compiler/bytecode/lopcodes.lua",
39 ["metalua.compiler.bytecode.ldump"] = "metalua/compiler/bytecode/ldump.lua",
40 ["metalua.loader"] = "metalua/loader.lua",
43 ["metalua.treequery"] = "metalua/treequery.mlua",
44 ["metalua.compiler.ast_to_src"] = "metalua/compiler/ast_to_src.mlua",
45 ["metalua.treequery.walk"] = "metalua/treequery/walk.mlua",
46 ["metalua.extension.match"] = "metalua/extension/match.mlua",
47 ["metalua.extension.comprehension"] = "metalua/extension/comprehension.mlua",
48 ["metalua.repl"] = "metalua/repl.mlua",
52 --[==[-- Generate file lists
53 for _, ext in ipairs{ 'lua', 'mlua' } do
54 for filename in io.popen("find metalua -name '*."..ext.."'") :lines() do
55 local modname = filename :gsub ('/', '.') :gsub ('%.'..ext..'$', '')
56 print((' '):rep(8)..'["' .. modname .. '"] = "' .. filename .. '",')