anchor.diff:      
           if not ops.changed then printfn "Using default options.\n"
   
  +        let benchmarks = 
  +            match ops.benchmarks with 
  +            | [] -> ["bench1"; "bench2"] 
  +            | xss -> xss
  +
  +        let modes = 
  +            match ops.modes with 
  +            | [] -> [ "auto"; "numeric"] 
  +            | xss -> xss
  +
  +        let bench1 = List.contains "bench1" benchmarks 
  +        let bench2 = List.contains "bench2" benchmarks 
  +        let auto = List.contains "auto" modes
  +        let numeric = List.contains "numeric" modes
  +
           let n = ops.repetitions
           let nsymbolic = n / 1000
           let noriginal = n * 10
  
positive.code: //    let after = System.Diagnostics.Process.GetCurrentProcess().TotalProcessorTime.Ticks
  //    f(), (float (after - before)) / (float n)
  
  let duration n f =
      let s = new System.Diagnostics.Stopwatch()
      s.Start() |> ignore
      for i in 1..n do
          f() |> ignore
      s.Stop() |> ignore
      let dur = s.ElapsedTicks
      f(), (float dur) / (float n)
  
  //let printArray (s:System.IO.StreamWriter) (o:obj[]) =
  //    for a in o do
  
negative.code:             x |> Array.sumBy (fun v -> v * log (v / 2.))
          let fvsD (x:DV) =
              x * (log (x / 2.))
  
          let fvv (x:float[]) =
              [|x |> Array.sumBy (fun v -> v * log (v / 2.))
  