anchor.diff:      changed : bool;
       }
   
  +let minRepetitions = 10000
  +
   let defaultOptions = {
       repetitions = 50000; // > 100000 seems to work fine
       fileName = sprintf "DiffSharpBenchmark%A.txt" System.DateTime.Now.Ticks
  
positive.code:         printfn "Writing results to file: %s" fileName
  
          let stream = new System.IO.StreamWriter(fileName, false)
          stream.WriteLine("DiffSharp")
          stream.WriteLine("Copyright (c) 2014, National University of Ireland Maynooth.")
          stream.WriteLine("Written by: Atilim Gunes Baydin, Barak A. Pearlmutter\r\n")
          stream.WriteLine(sprintf "Benchmarking module version: %s" benchmarkver)
  
negative.code:         | f::xss -> 
              parseArgsRec xss {optionsSoFar with fileName = f; changed = true}
          | _ ->
              eprintfn "Option -f needs to be followed by a file name."
              parseArgsRec xs optionsSoFar
      | "/r"::xs | "-r"::xs ->
          match xs with
          | r::xss ->
              let couldparse, reps = System.Int32.TryParse r
              if couldparse then
                  if reps < minRepetitions then
                      eprintfn "Given value for -r was too small, using the minimum: %i." minRepetitions
                      parseArgsRec xss {optionsSoFar with repetitions = minRepetitions; changed = true}
                  else
                      parseArgsRec xss {optionsSoFar with repetitions = reps; changed = true}
              else
                  eprintfn "Option -r was followed by an invalid input."
                  parseArgsRec xs optionsSoFar
          | _ ->
              eprintfn "Option -r needs to be followed by a number."
              parseArgsRec xs optionsSoFar
      | x::xs ->
          eprintfn "Option \"%s\" is unrecognized." x
  