Enhancements:
1. Inference of most specific common supertype (excluding Alpha) has been implemented, such that evaluating...
Code: Select all
RELATION {
TUPLE {x Triangle(Point(0,0), Point(2,3), Point(7,4))}
TUPLE {x Square(Point(1,1), Point(4,3))}
}
Code: Select all
RELATION {x Shape} {
TUPLE {x Triangle(Point(0,0), Point(2,3), Point(7,4))}
TUPLE {x Square(Point(1,1), Point(4,3))}
}
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...
Code: Select all
TYPE PosInt IS {INTEGER CONSTRAINT INTEGER >= 0};
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:
Code: Select all
TYPE PosInt IS {INTEGER CONSTRAINT INTEGER >= 0};
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