anchor.diff:  
       let charNum ch = int ch - int 'A'
   
  +    let numChar x = char <| int 'A' + x
  +
  +    let pad = String.replicate
  +
       let diamond1 (ch:char) =
           ""
   
  
positive.code:         |> String.concat "\n"
  
      let diamond4 (ch:char) =
          let n = int ch - int 'A'
          [ 0 .. n] @ [ n - 1 .. -1 .. 0 ]
          |> List.map (fun x -> string (char (int 'A' + x)))
          |> List.toArray
          |> String.concat "\n"
  
      let diamond5 (ch:char) =
          let n = charNum ch
          let pad i = String.replicate i " "
          [ 0 .. n] @ [ n - 1 .. -1 .. 0 ]
          |> List.map (fun x -> sprintf "%s%c" (pad (n - x)) (char (int 'A' + x)))
          |> List.toArray
          |> String.concat "\n"
  
      let diamond6 (ch:char) =
          let n = charNum ch
          let pad i = String.replicate i " "
          [ 0 .. n] @ [ n - 1 .. -1 .. 0 ]
          |> List.map (fun x -> sprintf "%s%c" (pad (n - x)) (char (int 'A' + x)))
          |> List.toArray
          |> String.concat "\n"
  
  
negative.code:     let ``Diamond 5`` (ch:char) = diamondTest diamond5
  
      [<Property(Arbitrary=[| typeof<Letter> |])>]
      let ``Diamond 6`` (ch:char) = diamondTest diamond6
  
      [<Property(Arbitrary=[| typeof<Letter> |])>]
      let ``Diamond 7`` (ch:char) = diamondTest diamond7