Fons Adriaensen <fons.adriaensen(a)skynet.be> writes:
On Fri, May 14, 2004 at 11:31:01AM -0500, Jack
O'Quin wrote:
I'm having trouble figuring out Fons'
original point here, though I'm
sure he has one. Simple and human readable are worthwhile goals, but
hard to reconcile.
Strange.. I'd think these two would go hand in hand...
Whit 'simple' and 'line by line' I mean
- you read in a line with fgets()
- look at the first word, a keyword that tells you all about the format
of the line
- use sscanf() to read the rest.
Ah. I thought you meant syntactic simplicity, not the ease of writing
an ad-hoc parser. I fully agree that the size of the library should
be moderate. But, I'm not much in favor of basing a language on
fgets() and sscanf(). Made-up languages like that are often
syntactically more complex than you might think. Try writing the BNF
if this is not clear.
Why rule out
XML? It's one of the few widely-used language groups
that actually sorta meets both those requirements (*fairly* simple and
*somewhat* human-readable). ;-)
*somewhat* if properly formatted and indented. And evven then it's
bloated. XML was one of the reasons I gave up on Gnome. After having read
the forests (a forest is a lot of trees) for weeks I still was unable
to kill the file browser permanently.
I'm no great lover of XML, but at least its syntax is sufficiently
well-defined that it's easy to write a pretty-print script.
The other
examples that readily come to mind are even worse. LISP
appeals to me as an alternative, but that's probably not what he
wants, either.
LISP is quite nice actually, but you'd need a complete LISP engine to
read it...
That wasn't really a serious suggestion. The libguile.so.12.3.0 file
on my system is over half a meg. Would all the LADSPA hosts be
willing to add that and whatever else it entails to their memory
footprint?
Libxml2 is even bigger, almost a meg. I wonder how many LADSPA hosts
already use it for some other reason? I see that ardour, jamin and
hydrogen do...
$ ldd `which ardour` | grep xml
libxml2.so.2 => /usr/lib/libxml2.so.2 (0x40297000)
--
joq