úÎ À )ghc  provisional -Jaap Weel <weel at ugcs dot caltech dot edu>  Safe-InferredA field is a string A record is a series of fields =A CSV file is a series of records. According to the RFC, the > records all have to have the same length. As an extension, I  allow variable length records. &A Parsec parser for parsing CSV files AGiven a file name (used only for error messages) and a string to  parse, run the parser. :Given a file name, read from that file and run the parser @Given a string, run the parser, and print the result on stdout. 6Given an object of type CSV, generate a CSV formatted % string. Always uses escaped fields.         csv-0.1.2Text.CSVFieldRecordCSVcsvparseCSVparseCSVFromFile parseCSVTestprintCSVrecordfield quotedField