This may be of interest to some people on this list. It's a complete type-safe interface to PostgreSQL, from Objective CAML (OCaml) where statements are checked not just for syntax, but for types, at compile time. http://merjis.com/developers/pgocaml It works by shuffling the statements off to the database at compile time, PREPARE-ing them, and then DESCRIBE-ing them. In addition, it's pure OCaml. It doesn't use libpq at all (which has advantages and disadvantages as it turns out). Rich. -- Richard Jones, CTO Merjis Ltd. Merjis - web marketing and technology - http://merjis.com Team Notepad - intranets and extranets for business - http://team-notepad.com