anchor.diff:  
   [<AutoOpen>]
   module Operators =
  -    let inline (-->) (source:'T) (value:'T) = ()+    [<Arrow>]
  +    let (-->) (source:'T) (value:'T) = ()
positive.code: [<AttributeUsage(AttributeTargets.Method)>]
  type PredicateAttribute() = inherit Attribute()
  
  [<AutoOpen>]
  module internal Reflection =
      /// Converts expression to a tuple of MethodInfo and Arg array
      let toArgs args =
          let hasAttribute a (mi:MethodInfo) = mi.GetCustomAttributes(a, true).Length > 0
          [|for arg in args ->
              match arg with
              | Call(_, mi, _) when hasAttribute typeof<WildcardAttribute> mi -> Any
  
negative.code:     let rec toCallValue abstractType = function
          | Sequential(x,y) ->
              toCallValue abstractType x @ toCallValue abstractType y
          | Call(None, mi, [lhs;rhs]) when hasAttribute typeof<ArrowAttribute> mi -> 
              let mi, args = toCall abstractType lhs
              let returns = ReturnValue(rhs.EvalUntyped(), mi.ReturnType)
              [mi,(args,returns)]
  