I just wanted to post something short to get the ball rolling again on writing here. Sometimes it seems like the longer I go without doing something, the more resistant I feel to doing it. Tomorrow I'm starting to work in earnest on a pretty cool project for work, constructing an abstract interface to their legacy database that conforms to an XML document type definition. I'm going to construct a data structure mirroring the grammar specified by the DTD, attaching programmatic functionality to it at different points of the tree that will query the legacy database and return a fragment of XML representing that portion of the document. I will then support Xpath queries against the imaginary document, which will locate the functionality to generate the XML being requested, restricting database access and document construction overhead only to the portions of the document that are actually requested. I'm going to try to use a functional programming language called Scala, which integrates pretty tightly with the Java platform, compiling to byte code and using Java classes directly within programs. I'm a little uncertain, especially because I'm going to write my own parser using a Java parser generator, and I'd like this parser to construct classes specific to Scala called case classes, which can be pattern matched, making decomposition of the parsed data simple. I'm not so sure I can instantiate these specialized classes in Java even though they are written in Java bytecode, so it remains to be seen how much impedance I'll feel between the two languages.