Part of getting ready to modify my scripting solution has been to take a look around at other scripted graphics applications, and see what they are doing well and (perhaps more importantly) what they are doing not so well. There are of course many games and engines out there that utilize Lua, so I have had a look around. I particularly was interested in the Crytek scripting solution, given how successful they have been. However, after trying to research it for a while I found that it wasn't so different than many others that I have read through. There seems to be a commonality in most of the implementations that I have seen...
So I decided to take a look at the graphics ecosystem outside of games. A while back, I had heard about the 'Processing' project which you can find here. For anyone who hasn't heard of it, it is more or less Java with some basic OpenGL wrapping and support for SVG format shapes that was designed to allow artists to begin programming. The results are actually pretty cool, and it is a neat little package to play around with.
After spending some time with the IDE, I realized why it seems so easy to use. It provides a limited number of built in functions, and lets the user simply do what they want. There is a minimum number of 'rules' that the scripter needs to follow... that seems like a great idea! Provide enough of the metal that you can get things done, but don't provide every single class to the scripting interface because a) it is much more work and b) it most likely won't get used.
So, as I progress through the next phase of my scripting upgrade, I will keep that mantra in mind - enough to make it shine, but not so much that it appears shiny [grin].