Things missing: *** Add support for MethodInfos ** and the nullable stuff, I believe we have to pull the values before calling the various MethodINfos in BinaryExpression, need to write test Coalesce's conversion, what is this used for? Constant generation of objects, how are those Constants in the first place? Try: OrElse (Constant (new Boo(), new Boo ())) Tests missing: Must write tests for all the codepaths currently in BinaryExpression.Emit (specially the XXXChecked variants as those so far have shown most of the problems). Write tests for stuff using MethodInfos (the various BinaryExpressions using MEthodInfos have been barely tested). Write more tests using nullables, currently we are short on them, and they are not extensively tested. Missing: Add, Subtract, Multiply, Divide, Modulo, <<, >> And, Or, Xor MultiplyChecked, DivideChecked, case ExpressionType.OrElse: case ExpressionType.AndAlso: