Sort:  

Because the code is far more complex and syntax not familiar to most coders. Also no sand box.

Not sure what you mean that its far more complex? Really the main difference is that you replace curlies {} with then do and end. It's a minor syntax difference, but really any experienced programmer should have no trouble adapting to it.

Also not sure what you mean by no sandbox? Do you mean the scripting environment? You can control that with setfenv and getfenv and if you're using lua 5.2+ just use _ENV.