If that is not checked, after MUSHclient loads Lua, it sets package.loadlib to be nil, so you can't use it to load DLLs.
It also sets:
package.loaders [3] = nil -- disable DLL loader
package.loaders [4] = nil -- disable all-in-one loader
These are used by the "require" function. See:
http://www.gammon.com.au/scripts/doc.php?lua=package.loaders
The overall intention was to stop malicious use of DLLs without user authorization.
I can't speak for how secure all the other languages are, my intention was not to open gaping security holes by allowing things like io (which could delete or open files), or DLLs (which could be used to load arbitrary code) without at least some user knowledge or intervention.
You know how Microsoft has been sledged over the years for making an insecure product? In many ways, this insecurity comes about because they tried to make it easy for the end-user, so they didn't put too many restrictions into their products. Of course, those insecurities ended up being exploited, with the end-result that we now have worms, viruses, trojans, and everything else under the sun lurking in Windows computers.