26 Dec 2000 sengan   » (Journeyer)

Been a while since I last wrote anything up. So what happened?

My PhD was accepted in June... and I received the certificate last week.

I bought a house up at 8000 feet in Colorado. On Xmas it was foggy but today's superb albeit a bit bright with snow. Spent most of Xmas assembling a table saw, and reading a really interesting book about "The American who taught the Japanese about Quality", a Dr. Demming... I wrote a review of it, I'll either put on /. or here.

I'm much further with the binary parser I described back in early April. It's now 2000 lines of Haskell going through lexing, parsing, desugaring, finding unknown/redefined symbols, finding recursively defined symbols, finding symbol lengths, finding equalities (the grammar allows bits 3:5 of symbol A to be equal to bits 7:9 of symbol B), determining the constants in the grammar, determining types and being able to differentiate different subtypes depending on the bits that are set, and then interacting with the user/debugger. At the moment I'm rewriting the back end (interacting with the user). I'm writing a paper on it so when I'm done I'll post a link to it here.

I coded a library in C to interact with the haskell parser as a seperate process. To allow massively large structures like caches to be parsed, Binary parser is able to deal with arbitrarily large numbers. Coding that in Haskell was easy. But allowing the same flexibility in C was a real pain. realloc, realloc, realloc... I'm not surprised that buffer overflows are so common when it's so painful to code array manipulation correctly.

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!