lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]

On Wednesday, September 23, 2015 04:06:23 PM Jerome Vuarand wrote:
> 2015-09-23 15:15 GMT+01:00 Dirk Laurie <>:
> > I have never understood what the manual means by "loader".
> > Is "mymod.lua" a loader for the module "mymod"?
> Yeah, in a sense. The loader (as defined in the require protocol) is a
> function, so the loader in your example is the function returned by
> loadfile("mymod.lua"), not the file itself (though whether these two
> things are distinct is a matter of point of view).

Stupid Lua Tricks!

    table.insert(package.searchers, function(module)
        local modulefunction, errormessage = load(module)
        return modulefunction or errormessage
    require[[ print "Hello World!" ]]

Why do searchers not follow the `nil,errormessage` protocol? If that were the 
case the above could be simplified to 

    table.insert(package.searchers, load)

tom <>