The home page of Lua and the place where you can subscribe to the Lua mailing list
This is the Lua wiki. It has many useful articles and links to help you out.
By now, I bet you’re thinking that scripting languages are the code equiva-lent of a trip to Willy Wonka’s chocolate factory. Everything you want and more, all wrapped up in pretty ribbons. Well, I have to give it to you straight… it’s not. There are a few downsides. For starters, all those lovely helper apps you’ve come to know and love aren’t going to help you when you type your scripts (not without modification, anyway). Say farewell to auto-complete and a teary adieu to those lovely little info boxes that appear when your mouse hovers over a variable. Oh boy! Like electricity or doughnuts, you don’t realize how much you rely on these things until you have to make do without.
In addition, debugging a script can be hell. Languages such as C/C++ have matured over many years and your typical development environment comes with a powerful suite of debugging utilities. You can step through code a line at a time, break into the code at will, and create watches to track the peskier of your variables. Programmers have never had it so easy. How-ever, when you start to use scripting languages, the simplest of bugs can take an age to track down. Even a plain old syntactical error can seem like a bug from hell.
Of course, the level of evil inherent in scripting languages varies tre-mendously. Some languages provide no assistance whatsoever, while others (Lua for example) provide a few error codes, may throw exceptions, and can halt the script before too much damage is done. Very few, however, provide the sort of facilities you are used to, so most of the time you will end up writing your own.