anchor.diff:  
               let minfo = minfo.GetGenericMethodDefinition().MakeGenericMethod methTys
               Expression.Call(minfo,Array.append FPs [| BP |]) |> asExpr
  -
  +*)
           | Patterns.AddressOf _ -> raise <| new NotSupportedException("Address-of expressions may not be converted to LINQ expressions")
           | Patterns.AddressSet _ -> raise <| new NotSupportedException("Address-set expressions may not be converted to LINQ expressions")
           | Patterns.FieldSet _ -> raise <| new NotSupportedException("Field-set expressions may not be converted to LINQ expressions")
  
positive.code: 
                  body.GetFreeVars ()
                  |> Seq.filter (fun freeVar -> not <| Set.contains freeVar parameterVars)
                  |> Seq.sortBy (fun freeVar -> freeVar.Name)
                  |> Seq.toList
  
              let varsCount = vars.Length
              if varsCount <= 5 && capturedVars.Length <= 8 then
  
negative.code:     let Conv (e: #Expr,eraseEquality) =
          let e = optimize e
  
          let linqExpr = ConvExpr { eraseEquality = eraseEquality; varEnv = Map.empty; letrec = None } (e :> Expr)
  
          Expression.Lambda(linqExpr, Expression.Parameter(typeof<unit>)) |> asExpr
  
  