Types and persistence in database programming languages
ACM Computing Surveys (CSUR)
The ODMG object model: does it make sense?
Proceedings of the 12th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
The object data standard: ODMG 3.0
The object data standard: ODMG 3.0
POPL '77 Proceedings of the 4th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Orthogonally persistent object systems
The VLDB Journal — The International Journal on Very Large Data Bases - Persistent object systems
DataGuides: Enabling Query Formulation and Optimization in Semistructured Databases
VLDB '97 Proceedings of the 23rd International Conference on Very Large Data Bases
Procedures in Object-Oriented Query Languages
VLDB '95 Proceedings of the 21th International Conference on Very Large Data Bases
OCL as the Query Language for UML Model Execution
ICCS '08 Proceedings of the 8th international conference on Computational Science, Part III
Optimization of object-oriented queries through rewriting compound weakly dependent subqueries
DEXA'10 Proceedings of the 21st international conference on Database and expert systems applications: Part I
Implementation of updateable object views in the ODRA OODBMS
OTM'11 Proceedings of the 2011th Confederated international conference on On the move to meaningful internet systems - Volume Part II
Hi-index | 0.00 |
We propose a new semi-strong approach to types and static type checking in object-oriented database query and programming languages. Many features of current object-oriented query/programming languages, such as naming, ellipses, automatic coercions and irregularities in data structures, cause that current formal strong type systems are irrelevant to practical situations. There is a need for semi-strong, but still efficient type checking. We treat types as syntactic qualifiers (signatures) attached to objects, procedures, modules and other data/program entities. In our approach a type inference system is based on decision tables involving signatures and producing type checking decisions. A type checker is based on data structures which statically model run-time structures and processes: a metabase, a static environment stack, a static result stack and a type inference decision tables. To discover several type errors in one run we use the mechanism for restoring the state of the type checker after a type error.