anchor.diff:  type FragmentSpread =
       {
           FragmentName : FragmentName
  -        Directives : Directive ResizeArray
  +        Directives : Directive ListWithSource
       }
   
   let fragmentSpread =
  
positive.code:     {
          Alias : string option
          FieldName : string
          Arguments : Argument ResizeArray
          Directives : Directive ResizeArray
          Selections : Selection ResizeArray
      }
  and Selection =
      | FieldSelection of Field
  
negative.code: 
  (**
  
  The spec also defines a "const" variant of the value parser, which excludes variables
  and lists/objects containing variables. Because our list and object parsers are parameterized
  this is trivial to implement.
  
  *)
  
  let valueConst = precursive <| fun valueConst ->
      %[
          numericValue
          stringValue
          booleanValue
          enumValue
          listValue valueConst
          objectValue valueConst
      ]
  
  (**
  
  Now that we have values, let's keep building up to full queries.
  
  *)
  
  