I'm experimenting with a project which will need some complicated file parsing abilities and I don't want to go the XML route for various reasons. Therefore, I am looking for a parsing framework built to take advantage of the CLR. Everything seems to be a port of some archaic C library, or some Java framework that's been modified to produce C# code. I'm used to being able to do a simple Google search to find the kinds of libraries I need, but I'm getting very few good hits for this. I've only built a few pieces of code that really qualify as parsers over the years, so maybe its my inexperience that's my problem, but it just seems like it ought to be easier to find a good tool.
We've had enough time for the CLR tools to take on their own identity and take advantage of the CLR rather than remain lagging clones of their Java or C++ counterparts. I see this in almost every space. There just seems to be a huge hole for file parsing. Maybe most CLR developers have embraced XML as the one and only file format. But, when it comes to human-edited files or content, XML is pretty cumbersome and bloated.
For now, I've settled on Grammatica, which is the most straightforward (and working) parser generator thus far. It's written in Java, but that's not a big deal. The problem is that its output is Java-centric, and only modified slightly to be C# code. It's got callbacks instead of events to handle tokens or products. I found myself modifying the output (a no-no in code generation) to make it simpler before I realized I'd just be doing it again if I changed my grammar. So, I'm really frustrated and just ranting, but I should be able to mold it to my purposes.