The Implementation of FDL, a Functional Database Language
Alexandra Poulovassilis · The Computer Journal · 1992
We describe the implementation of the functional database language FDL. FDL improves upon previous languages with a functional data model by allowing any computable function to be defined and stored and by supporting arbitrarily nested data types which are all persistent. All functions are updated incrementally by the insertion and deletion of equations, and an integrity sub-system verifies updates against the declared semantic integrity constraints. We show how a binary relational storage structure is used to support all of FDL's persistent data. We also show how the technique of graph reduction from functional programming languages is modified for the evaluation of FDL queries. Finally, we compare our implementation with that of related languages.