Article ID | Journal | Published Year | Pages | File Type |
---|---|---|---|---|
423291 | Electronic Notes in Theoretical Computer Science | 2011 | 19 Pages |
Abstract
We present the design and implementation of dynamic type and value introspection for the OCaml language. Unlike previous attempts, we do not modify the core compiler or type-checker, and instead use the camlp4 metaprogramming tool to generate appropriate definitions at compilation time. Our dynamics library significantly eases the task of generating generic persistence and I/O functions in OCaml programs, without requiring the full complexity of fully-staged systems such as MetaOCaml. As a motivating use of the library, we describe a SQL backend which generates type-safe functions to persist and retrieve values from a relational database, without requiring programmers to ever use SQL directly.
Related Topics
Physical Sciences and Engineering
Computer Science
Computational Theory and Mathematics