-
Notifications
You must be signed in to change notification settings - Fork 10
Recent Updates 2014
Thanks to some recent interest by @dazinator, I have been motivated enough to start looking at this project again. He has made a lot of common sense requests that hopefully make the library more reusable. He also caught a lot of dumb mistakes, and omissions from my SQL parser.
The one thing that really excites me about this project is the recursive descent parser I wrote. While an off-the-shelf parser would probably perform better and simplify things, I have a deep understanding of how it works. That's made me very productive. I am actually thinking of some additional features that would make me even more productive.
Primarily, I shouldn't have to manually check every single sub-expression as I navigate the AST. Instead, I should be able to tell the parser "when you encounter < expression>, do < code generation>". This is actually somewhat harder than it sounds at first. It is complicated by the fact that some methods return values, other methods edit their arguments, and so on. I am thinking closures and delegates (Action<TokenResult>) might be the answer. Ideally, whatever I come up with, it would be nice to eliminate the need to define a string constant for every possible expression and token.