anchor.diff:          static member instance (Empty, _:List<'a>  ) = fun () -> [  ]
           static member instance (Empty, _:'a []     ) = fun () -> [||]
   
  -    type Append = Append with   
  +    type Append = Append with  
           static member instance (Append, x:option<_>, _) = fun y -> match x with None -> y | xs -> xs
           static member instance (Append, x:List<_>  , _) = fun y -> x @ y
           static member instance (Append, x:_ []     , _) = fun y -> Array.append x y
  
positive.code: ﻿namespace FsControl.Core.Abstractions
  
  open System
  open FsControl.Core.Prelude
  open FsControl.Core.Types
  open Monoid
  
negative.code:             | (Choice1Of2 a, Choice1Of2 b) -> Choice1Of2 (a b)
              | (Choice2Of2 a, _)            -> Choice2Of2 a
              | (_, Choice2Of2 b)            -> Choice2Of2 b :Choice<'b,'e>
  
          static member        instance (Apply, f:Map<'k,_>   , x:Map<'k,'a>   , _:Map<'k,'b>   ) :unit->Map<'k,'b> = fun () -> Map.ofSeq (seq {
              for e in f do
                  let k,v = e.Key, e.Value
                  if Map.containsKey k x then yield (k, f.[k] x.[k])})
  
          static member        instance (Apply, f:_ Expr      , x:'a Expr      , _:'b Expr      ) = fun () -> <@ (%f) %x @> :'b Expr
  
          static member        instance (Apply, f:('a->'b) Generic.List, x:'a Generic.List, _:'b Generic.List) = fun () ->
              new Generic.List<'b>(Seq.collect (fun x1 -> Seq.collect (fun x2 -> Seq.singleton (x1 x2)) x) f) :'b Generic.List
  
          
     
      let inline internal (<*>) x y = Inline.instance (Apply, x, y) ()
  
  open Applicative
  
  
  module Alternative =
      type Empty = Empty with
  