[Date Prev][Date Next][Thread Prev][Thread Next]
- Subject: [ANNOUNCE] Improvements to stdlib (wiki: StandardLibraries)
- From: Reuben Thomas <rrt@...>
- Date: Mon, 12 Aug 2002 23:19:44 +0100 (BST)
I've been hacking on those standard libraries again
First, I've broken some dependency loops between modules (these weren't
causing any problems, but John Belmonte pointed out that they weren't
compatible with Lua 5.0's require; he aims to replace the version I've got
with a fully 5.0-compatible one soon).
Secondly, I've improved my tostring implementation. Now, you can add
stringifier methods for any tag, and tostring will automatically be able
to turn your type into a string. Not only that, I've added a simple
pickler, which uses the same routines (though it can't yet cope with
Thirdly, I've added a LuaDoc-like tool called ldoc . It's pretty
brain-dead at the moment, and only a couple of libraries (see
std/data/list.lua) have been marked up to work with it, but it already
produces usable web pages.
Fourthly, there are lots of other neat additions (all of which I've added
for real applications at work, now that I've gotten over the excitement of
programming these libraries for the sheer fun of it!), including the
ability to index tables by strings more flexibly, so you can easily go
from t and "foo.bar.baz" to t.foo.bar.baz.
Do have a look, and if you have thought about contributing code in the
past, now's the time to get stuck in. Mail me, or join the mailing list,
and tell me what you'd like to do. I'm particularly interested in adding
functionality from areas not yet cover, such as GUIs, XML parsing, CGI,
and all those other things for which there are standalone libraries out
there that could usefully be integrated into a standard set. I don't want
to reimplement everything, just integrate it and let each library take
advantage of the others.
There's also plenty to do in the library itself: ldoc-ify the whole lot,
improve ldoc, LTN7-ify the name space, make it Lua 5.0 compatible... I'm
particularly interested in someone coming up with a plan for integrating C
libraries (to go with the new loadlib support in 5.0). CLAN here we come!
Finally, if you're a Lua developer, take a look. These libraries contain a
lot of general-purpose data structure manipulation stuff you won't find
elsewhere, and a lot of it is really handy (mapping over and indexing
lists, wrapping text, getopt handling for command line programs...). The
libraries are small, modular, and I use them every day for my own
http://www.mupsych.org/~rrt/ | Caution Children At Play Drive Slowly