rowrecord: Build records from lists of strings, as from CSV files.

[ bsd3, data, library, text ] [ Propose Tags ]

Given rows of String data with column headings, this library will create values of user-defined record types. Records can contain mandatory or optional fields of any type, subject to a class constraint. Heading names and and record construction code are derived using Template Haskell.

One use case for this library is parsing records from a CSV file. A parser from CSV to [[String]] is not included, but there are several suitable packages on Hackage.

The emphasis of this library is on simplicity of use rather than performance. It is likely to be suitable for a hundred thousand rows, but not many millions. A future version may support packed input formats like ByteString or Text. Suggestions and patches are welcome.


Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees


  • No Candidates
Versions [RSS] 0.1
Dependencies base (>=3 && <5), containers (>=0.3), template-haskell (>=2.4) [details]
License BSD-3-Clause
Author Keegan McAllister <>
Maintainer Keegan McAllister <>
Category Data, Text
Uploaded by KeeganMcAllister at 2010-09-27T02:36:26Z
Reverse Dependencies 2 direct, 0 indirect [details]
Downloads 1160 total (5 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs uploaded by user
Build status unknown [no reports yet]