lua-users home
lua-l archive

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


Reuben Thomas wrote:


Ditto, as I've said several times: Lua (and for that matter, its standard
libraries) are extremely effective yet small. Extend this philosophy, and
it should be possible to get a general-purpose scripting system with a
good range of libraries that gives 80% of the functionality of Perl or
Python in 20% of the size. I appreciate that as you expand the scope of a
system compactness is harder to maintain, but there's a difference of
emphasis I sense in Lua that may help: namely, a willingness to rely on
library routines a bit less in any given project. It seems to me that
overeagerness to use libraries can sometimes slow down development (e.g.
by using a library ill-suited to the task in hand, or by learning a large
and complex library merely to use one or two routines). Paradoxically, if
the Lua system itself is to be kept small, this attitude should be avoided
internally, but that's the difference between heavily reused system code
and one-shot application code.


Well put! I wouldn't really want Lua to have 100% of the functionality of Perl or Python, because, chances are, it would become big and complicated.

For example, I am currently using a lua exe compiled for me by Mark at Tec-Graf. It contains lua, iup, luasocket, and luasql. This one binary, approximately 1.9MB in size, pretty much is fulfilling 90-95% of my scripting needs. What worries me is that I can't recreate this binary if I had to. Lets say they find a bug in luasocket and the library author fixes it in the source code. I would have to rely on Mark's generosity (which has been great) to recompile the source code and post a new exe for me to use. Thats what I would like to get out of this whole dynamic library, easy compilation thread. :)

Secondly, I know exactly what you mean by "a willingness to rely on library routines a bit less". For example, in the project I am working on now using lua, I don't mind having to write a routine to shell out to dos to get a directory listing, because the language provides enough "goodness" in other areas to make it worth the effort.