> From: Ted Zlatanov <[EMAIL PROTECTED]> > Date: Thu, 13 May 2004 10:18:05 -0400 > > On Mon, 29 Mar 2004, [EMAIL PROTECTED] wrote: > > > I'm personally not going to write such an editor, but one of the > > reasons I changed the binding configuration functions to use strings > > was to make it easier to write a configuration editor. (The other > > reason was that a lot of people seem to have trouble understanding > > function references.) Also I've reduced the amount of functions > > normally used in configuration files (single defbindings etc.), so > > it should be quite easy to write a configuration editor. It is not > > even necessary to use Lua to write the editor, but it is perhaps > > easiest to read the configuration files by defining or exporting > > that small set of functions to Lua and having it execute the > > files. My wrapper generator (mkexports.lua plus luaextl/) is perhaps > > the easiest to use for C programs (it should be relatively > > independent of rest of Ion and I should perhaps repackage it as a > > standalone library dependant only on libtu) as it doesn't require > > any extra definition files unlike SWIG or toLua. For C++ there may > > be an even better solution, whose name I can't recall now, based on > > templates. > > I think a GUI configuration editor is almost indispensible if you want > to reach more users. I am an experienced C, Perl, Lisp, and Java > programmer, and I find Lua confusing, even after reading their docs. > It's just not an easy language.
Read the book "Programming in Lua" by Roberto Ierusalimschy: http://www.amazon.com/exec/obidos/tg/detail/-/8590379817/qid=1084479045/sr=8-1/ref=pd_ka_1/103-9211266-7357435?v=glance&s=books&n=507846 It's a very good, thorough tutorial on the language. I'm not exactly blown away by Lua -- I don't see what it provides that e.g. python doesn't (aside from a small footprint), and some of the design choices seem weak, but there's nothing really confusing about it. You may be getting confused by some of the syntactic sugar, which is indeed odd (e.g. "foo{bar=1, baz=2}" being sugar for "foo({bar=1, baz=2})"). I'm not sure that "reaching more users" should be the goal of Ion. Reaching more like-minded users is more like it. Most users that want GUI configuration editors will probably not like Ion anyway. Maybe it's just me, but I've always found GUI configuration editors frustrating. They're fine from an interface standpoint, but they suffer severely from the "what you see is all you get" syndrome -- there's always something I want to change which isn't in the configuration GUI (metacity is particularly lame in this regard). In contrast, with Ion I was creating my own theme twenty minutes after starting to use it. Still, if we can have a GUI configuration editor on top of the existing system, so much the better. Mike
