anchor.diff:          lzy <| fun () ->
               match list1.Value, list2.Value with
               | Cons (hd1, tl1), Cons (hd2, tl2) ->
  -                consc (mapping hd1 hd2) (map2 mapping tl1 tl2)
  +                consCell (mapping hd1 hd2) (map2 mapping tl1 tl2)
               | _ -> Empty
   
       /// Return the list which contains on demand the pair of elements of the first and second list.
  
positive.code:         lzy <| fun () ->
              match list1.Value, list2.Value with
              | Cons (hd1, tl1), Cons (hd2, tl2) ->
                  consc (hd1, hd2) (zip tl1 tl2)
              | _ -> Empty
  
      /// Return a new collection which on consumption will consist of only the
  
negative.code:             | Empty ->
                  Empty
              | Cons (hd, tl) ->
                  consCell (mapping hd) (map mapping tl)
  
      /// Build a new collection whose elements are the results of applying the given function
      /// to the corresponding elements of the two collections pairwise.
  