The Object-Oriented Functional Data Language (O2FDL), an interactive, strongly typed database programming language, is discussed. It features inheritance and encapsulation of object-oriented languages and a functional notation for message expressions. The main contributions of the O2FDL are: (1) functions of indefinite nesting levels that simplify nested list processing and form the basis of an efficient computation model; (2) path expressions that allow a flexible, graphical correspondence for database queries; (3) a type system featuring parametric and inclusion polymorphism, function restrictions, and type inferencing; and (4) system-defined functions that provide a concise and convenient notation for filtering aggregating, and combining objects. The versatility of the O2FDL is demonstrated here for both relationally-complete expressions and more general computations
Published in:
Data Engineering, 1989. Proceedings. Fifth International Conference on
Date of Conference: 6-10 Feb 1989