Database Programming in Machiavelli—a Polymorphic Language with Static Type Inference

68Citations
Citations of this article
15Readers
Mendeley users who have this article in their library.

Abstract

Machiavelli is a polymorphically typed programming language in the spirit of ML, but supports an extended method of type inferencing that makes its polymorphism more general and appropriate for database applications. In particular, a function that selects a field ƒ of a records is polymorphic in the sense that it can be applied to any record which contains a field ƒ with the appropriate type. When combined with a set data type and database operations including join and projection, this provides a natural medium for relational database programming. Moreover, by implementing database objects as reference types and generating the appropriate views — sets of structures with “identity” — we can achieve a degree of static type checking for object-oriented databases. © 1989, ACM. All rights reserved.

Cite

CITATION STYLE

APA

Ohori, A., Buneman, P., & Breazu-Tannen, V. (1989). Database Programming in Machiavelli—a Polymorphic Language with Static Type Inference. ACM SIGMOD Record, 18(2), 46–57. https://doi.org/10.1145/66926.66931

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free