anchor.diff:              sprintf "@p%d" !i
           Regex.Replace(s, "%.", eval)
       let sql = stripFormatting sql
  -    let conn = new SqlConnection(connectionString)
  +    let conn = connectionFactory()
       conn.Open()
       let cmd = conn.CreateCommand()
       cmd.CommandText <- sql
  
positive.code:         let handler = proc types []
          unbox (FSharpValue.MakeFunction(typeof<'a>, handler))
  
  let sqlProcessor connectionString (sql: string, values: obj list) : IDataReader =
      let stripFormatting s =
          let i = ref -1
          let eval (rxMatch: Match) =
  
negative.code:         param.Value <- p
          cmd.Parameters.Add param |> ignore
      values |> Seq.iteri createParam
      cmd.ExecuteReader(CommandBehavior.CloseConnection)
  
  let runQuery connectionFactory a = PrintfFormatProc (sqlProcessor connectionFactory) a