anchor.diff:              | prev :: _, current :: _ ->
                   Some prev, Some current
   
  -    /// The current element (if any).
  +    /// <summary>The current element (if any).</summary>
       member __.Current
           with get () =
               match list with
  
positive.code: open ExtCore
  
  
  /// An implementation of a 'zipper' for F# lists.
  [<Struct; NoComparison>]
  type ListZipper<'T> private (path : 'T list, list : 'T list) =
      /// The empty ListZipper value.
      static let empty : ListZipper<'T> =
          ListZipper ([], [])
  
      /// The empty ListZipper value.
      static member Empty
          with get () = empty
  
      /// Creates a ListZipper whose initial position is prior to
      /// the head element of the given list.
      new (list : 'T list) =
          ListZipper ([], list)
  
      /// Is the zipper positioned prior to the start of the list?
      member __.AtStart
          with get () =
              List.isEmpty path
  
      /// Is the zipper positioned after the end of the list?
      member __.AtEnd
          with get () =
              List.isEmpty list
  
      /// Is the zipper empty?
      member __.IsEmpty
          with get () =
              List.isEmpty path && List.isEmpty list
  
      /// The previous element (if any) and current element (if any),
      /// based on the zipper's current position.
      member __.Context
          with get () =
              match path, list with
  
negative.code:     let inline atEnd (zipper : ListZipper<'T>) : bool =
          zipper.AtEnd
  
      /// The previous element (if any) and current element (if any), based on the zipper's current position.
      [<CompiledName("Context")>]
      let inline context (zipper : ListZipper<'T>) : 'T option * 'T option =
          zipper.Context
  