[Dbappbuilder-relannounce] ANNOUNCE: Rel version 1.0.4 Beta released
Rel is a database management system (DBMS) that implements Tutorial D.
Brought to you by:
davevoorhis
From: Rel a. list.
<dba...@li...> - 2010-09-12 21:29:44
|
This version of Rel -- an implementation of Date & Darwen's "Tutorial D" database language -- provides two enhancements and several bug fixes. Enhancements: 1. Inference of most specific common supertype (excluding Alpha) has been implemented, such that evaluating... RELATION { TUPLE {x Triangle(Point(0,0), Point(2,3), Point(7,4))} TUPLE {x Square(Point(1,1), Point(4,3))} } ...returns... RELATION {x Shape} { TUPLE {x Triangle(Point(0,0), Point(2,3), Point(7,4))} TUPLE {x Square(Point(1,1), Point(4,3))} } ...assuming the existence of types 'Triangle' and 'Square' which are subtypes of 'Shape'. 2. Selectors are now generated for immediate subtypes of built-in types, as per Date & Darwen's "Database Explorations" (ISBN 978-1-4269-3723-1), Chapter 21, page 348 "Selectors for System Defined Types". E.g., the following... TYPE PosInt IS {INTEGER CONSTRAINT INTEGER >= 0}; ...will automatically create a selector called PosInt which accepts an INTEGER as its sole argument and returns a PosInt value. Bug Fixes: 1. A derived POSSREP definition list should be allowed to be empty when defining a type whose immediate supertype is a built-in type. However, Rel previously required at least one POSSREP. E.g., the following legitimate definition was not allowed: TYPE PosInt IS {INTEGER CONSTRAINT INTEGER >= 0}; This has been fixed. 2. A bug has been corrected that could, in rare circumstances, cause a database to fail to open due to an internal "LOG INTEGRITY" error. 3. A bug has been corrected that could, in rare circumstances, cause corruption of user-defined type values when inserted into a relvar immediately after any Rel error (e.g., a syntax error) has been generated. For more information, or to download Rel, see http://dbappbuilder.sourceforge.net/Rel.html |