15 May 2002 sthippo   » (Apprentice)

Bento is reaching the critical Dog Food stage. I have started converting the entire bentodev.org site from plain HTML to Bento, with great satisfaction. Also great number of bugs... the Dog Food exercise is indeed an extremely effective way to uncover problems and thereby achieve usability, even if it was invented by Microsoft (was it?)

The main bug I uncovered has to do with what is turning out to be perhaps the trickiest part of the Bento implementation: name resolution. Bento has a very versatile and powerful name space model, designed to support numerous patterns and techniques (delegation, overriding, hierarchies, abstract definitions, etc.). The way a name is resolved is intimately connected to the context: what object is being instantiated at that moment. What makes it complicated is that objects are subclassable and composable, so any number of objects might be being instantiated at one time. I've been trying to minimize the amount of contextual information I have to pass around, but as I define increasingly complex objects I keep running into cases which require more information.

Unfortunately increasingly complex objects also lead to increasingly convoluted debugging traces.

Meanwhile, Sourceforge is moving glacially on the bento project hosting request, and no one on the OSI license discussion list seems to have anything to say about the bento license. Pesky humans.

Latest blog entries     Older blog entries

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!