2007 Jan 05
1 of 5 | Expression Editor Quirks (or CodeDom Quirks II) - It's been a while since I've updated this. My apologies, but I do tend to disappear from work for the month of December, which is what I did this year too. Happy 2007!
This article can be considered somewhat of a sequel to my last one (CodeDom Quirks), but now I'll focus on some quirkiness of the WF Rules expression editors. The same editor is used to author and edit both Declarative Rule Conditions (the Condition editor) as well as Rule conditions and actions (the RuleSet editor). Both support a natural algebraic expression language that parses a large subset of what C# can express.
As I mentioned in the previous article, the parser behind these de......
2006 Oct 11
2 of 5 | CodeDom Quirks -
I'm going to talk a little bit here about the expression model used by WF rules, and some of the idiosyncrasies, caveats, and downright quirks that arise from our chosen expression model.
First, a little history. Rather than (re)inventing our own private Rule expression object model, the WF Rules team opted to leverage an existing expression model, namely CodeDom. CodeDom was originally intended as an object model for code emitters: i.e., VS-based designers like WinForms, and the like. The object model forms an abstraction that enables these designers to target C# and VB developers without having to bake language-specific notions into their tools.
 ......
2006 Sep 10
3 of 5 | Intro - I suppose the first entry in blog should be an introduction of sorts. Since this is a Microsoft blog, I'll mention immediately that I do work at Microsoft, and have since 1997. Prior to that I worked at IBM for 8 years. I am currently the development lead for the Windows Workflow Foundation Rules team. The content of this blog will therefore focus mostly on the WF Rules technology that I helped develop, and that I currently lead.
I should point out that I'm not a big fan of blogs. Heck, I don't even like the word "blog", which frankly sounds more like a bodily function than anything else ("... he got so drunk, he blogged all over the place").&nbs......
4 of 5 | Intro - I suppose the first entry in blog should be an introduction of sorts. Since this is a Microsoft blog, I'll mention immediately that I do work at Microsoft, and have since 1997. Prior to that I worked at IBM for 8 years. I am currently the development lead for the Windows Workflow Foundation Rules team. The content of this blog will therefore focus mostly on the WF Rules technology that I helped develop, and that I currently lead.
I should point out that I'm not a big fan of blogs. Heck, I don't even like the word "blog", which frankly sounds more like a bodily function than anything else ("... he got so drunk, he blogged all over the place").&nbs......
5 of 5 | Rete? -
It seems that every thing that is to be called a Rules Engine must claim to implement the Rete Algorithm. Microsoft's BRE does, Oracle's new Business Rules product does, iLog does, and the list goes on. Going against the tide, the Rules Engine in Windows Workflow Foundation (WF Rules) does not implement the Rete algorithm. That is not to say that it won't in the future, but in the near term, it won't.
Why not?
Let me first give a simple practical reason. WF Rules was developed on a short development cycle, so we just didn't have time to implement it, let alone test it.
There are plenty of resources out there that describe what the R......