The DBPL Project
DBPL is a type-complete modular database programming language developed
by our group between 1985 and 1992. In the
DBPL project we tackled the problem of supporting data-intensive
applications in a single framework, clean and simple in its conceptual
foundation and free of technical mismatches. Conceptually, we based the
DBPL language on Modula-2 with three built-in extensions which, at that
time, were considered necessary (and sufficient) for data-intensive
applications:
- a parametric bulk type constructor for ``keyed sets'' or
relations;
- a module concept which supports sharing across programs and implies
persistence;
- a procedure concept with transactional semantics, i.e.,
serializability and recovery.
In implementing the DBPL system we adopted a rather strict approach by
aiming for
- full orthogonality in our relationally extended type space;
- type-complete persistence, i.e. longevity of data from Booleans to
relations;
- functional abstraction for relational expressions including
recursion.
As a consequence, the DBPL project covers in a quite natural way
approaches otherwise considered disjoint as, for example, complex
objects, multibases and data deduction.
In [ScMa93], besides reporting on these project achievements and on
project spin-offs, we also present our insight in good-quality project
design and its dependency on conceptual simplicity and implementational
strictness. This also includes early recognition of the essential
project ``terminator'' which, in our project, was Modula-2's monomorphic
type system and its intrinsic restrictions on systems extensibility.
The DBPL project results in a mature product for modular database
application programming and a follow-up project based on polymorphic
types and other higher-order concepts (see Tycoon). Stable multi-user system
implementations are available on request for VAX/VMS and Sun-4/SunOS4.1
platforms. These implementations also provide transparent gateways to
access legacy databases on commercial SQL servers (Ingres and
Oracle).
DBPL Project Publications
[MaSc93] F. Matthes and J.W. Schmidt.
DBPL: The System and its Environment.
In M. Jarke, editor, Database Application Engineering with DAIDA,
volume 1 of Research Reports ESPRIT, pages 319-348. Springer-Verlag,
1993.
[ScMa93a] J.W. Schmidt and F. Matthes.
Modular and Rule-Based Database Programming in DBPL.
In M. Jarke, editor, Database Application Engineering with DAIDA,
volume 1 of Research Reports ESPRIT, pages 85-122. Springer-Verlag,
1993.
(also available as TR FIDE/91/15).
[ScMa93b] J.W. Schmidt and F. Matthes.
The DBPL Project: Advances in Modular Database Programming.
(to appear in Jounal 'Information Systems'), 1994.
[MRSS92] F. Matthes, A. Rudloff, J.W. Schmidt,
and K. Subieta.
The Database Programming Language DBPL - User and System Manual.
FIDE Technical Report FIDE/92/47, Fachbereich Informatik, Universität
Hamburg, Germany, July 1992.
(also appeared as Informatik Fachbericht FBI-HH-B-159/92).
[MRSS92a] F. Matthes, A. Rudloff, J.W.
Schmidt, and K. Subieta.
A Gateway from a DBPL to Ingres: Modula-2, DBPL, SQL+C,
Ingres.
FIDE2 Technical Report FIDE/92/54, Fachbereich Informatik, Universität
Hamburg, Germany, August 1992.
[ScMa92] J.W. Schmidt and F. Matthes.
The Database Programming Language DBPL - Rationale and Report.
FIDE Technical Report FIDE/92/46, Fachbereich Informatik, Universität
Hamburg, Germany, July 1992.
(also appeared as Informatik Fachbericht FBI-HH-B-158/92).
[ERMS91] J. Eder, A. Rudloff, F. Matthes, and
J.W. Schmidt.
Data Construction with Recursive Set Expressions in DBPL.
In Proceedings of the Kiev East/West Workshop on Next Generation Database
Technology, volume 504 of Lecture Notes in Computer Science, April
1991.
(also appeared as TR FIDE/91/13).
[MaSc91a] F. Matthes and J.W. Schmidt.
Bulk Types: Built-In or Add-On?.
In Proceedings of the Third International Workshop on Database Programming
Languages, Nafplion, Greece. Morgan Kaufmann Publishers, September 1991.
(also appeared as TR FIDE/91/27).
[MSS91] F. Matthes, G. Schröder, and J.W.
Schmidt.
VAX Modula-2 User's Guide; VAX DBPL User's Guide.
DBPL Memo 121-91, Fachbereich Informatik, Universität Hamburg, Germany,
December 1991.
[ScMa91] J.W. Schmidt and F. Matthes.
The Rationale behind DBPL.
In 3rd Symposium on Mathematical Fundamentals of Database and Knowledge Base
Systems, volume 495 of Lecture Notes in Computer Science.
Springer-Verlag, May 1991.
[ScMa90] J.W. Schmidt and F. Matthes.
Naming Schemes and Name Space Management in the DBPL Persistent Storage
System.
In Persistent Object Systems, Martha's Vineyard, Massachusetts, USA,
September 1990. Morgan Kaufmann Publishers, Inc.
[ScMa90a] J.W. Schmidt and F. Matthes.
Language Technology for Post-Relational Data Systems.
In Database Systems of the 90s, volume 466 of Lecture Notes in
Computer Science, Berlin, Germany, November 1990. Springer-Verlag.
[MaSc89] F. Matthes and J.W. Schmidt.
The Type System of DBPL.
In Proc. of the 2nd Workshop on Database Programming Languages, Salishan
Lodge, Oregon, pages 255-260, June 1989.
[SGLJ89] J.W Schmidt, L. Ge, V. Linnemann, and
M. Jarke.
Integrated Fact and Rule Management Based on Database Technology.
In J.W. Schmidt and C. Thanos, editors, Foundations of Knowledge Base
Management, Topics in Information Systems. Springer-Verlag, 1989.
Florian Matthes (2-mar-94)