a34311f

Faddle · faddle.git · Tickets

Branches > main > a34311f > files

Return module table from bootstrap

Grahp, 2026-07-19

Commit: a34311f35fb655119cd1193439c2a7c1d184cb51
Parent: c985374

3 changed files:

org/faddle/lang/bootstrap.lua modified (view file)

@@ -2,6 +2,7 @@  local read = require("org.faddle.lang.read").read local eval = require("org.faddle.lang.eval").eval+local modules = require("org.faddle.lang.eval").modules local create_env = require("org.faddle.lang.eval").create_env  local faddle_path = ";?.fdl;?/init.fdl"@@ -19,12 +20,10 @@         local forms = read(source)         for i = 1, #forms do           local form = forms[i]-          if i == #forms then-            return eval(form, env)-          else-            eval(form, env)-          end+          eval(form, env)         end+        -- Return the module table+        return modules[env.current_module]       end     end   end

org/faddle/lang/compile.lua modified (view file)

@@ -152,7 +152,8 @@ local function execute(lua_source, chunk_name)   -- Really, needs to just have all of the std library loaded :p   print(lua_source)-  -- TODO core depends on itself...+  -- TODO depend on bootstrap, not on rt?+  -- I'm not sure actually   local chunk, err = loadfn("local __rt = require('org.faddle.lang.rt');" .. lua_source, chunk_name)   if not chunk then     error(err)

org/faddle/lang/eval.lua modified (view file)

@@ -167,4 +167,4 @@   return form -- string, number, function, thread, userdata, nil end -return {eval = eval, create_env = create_env}+return {eval = eval, create_env = create_env, modules = modules}