anchor.diff:      open System.Collections.Generic
       open System.IO
       open System.Reflection
  -    open System.Xml
   
       open SharpXml.Attempt
       open SharpXml.Extensions
   
  +    /// Record type containing the serialization information
  +    /// for a specific property member
       type PropertyWriterInfo = {
           Info : PropertyInfo
           OriginalName : string
  
positive.code:             match determineWriter t with
              | Some s -> Atom.updateAtomDict serializerCache t s
              | _ -> invalidOp "No serializer available for type %s" t.FullName
  
negative.code:         elif t = typeof<Type> then Some ValueTypeSerializer.writeType
          else None
  
      /// Build a PropertyWriterInfo object based on the
      /// specified PropertyInfo
      let rec buildPropertyWriterInfo (propInfo : PropertyInfo) =
          { Info = propInfo
            OriginalName = propInfo.Name
            ClsName = propInfo.Name.ToCamelCase()
            GetFunc = fun o -> o // TODO
            WriteFunc = determineWriter propInfo.PropertyType
            Default = Reflection.getDefaultValue propInfo.PropertyType }
  
      /// Writer function for IEnumerable
      and writeEnumerable (writer : TextWriter) (value : obj) =
          let collection : IEnumerable = unbox value
          let write func elem =
              let f = match func with | None -> determineWriter (elem.GetType()) | _ -> func
  