[Prev][Next][Index][Thread]
technical reports (re)
-
To: types@dcs.gla.ac.uk
-
Subject: technical reports (re)
-
From: Alexandre Zamulin <zam@cs.usm.my>
-
Date: Fri, 15 Jul 1994 09:53:13 +0800 (MYT)
-
Approved: types@dcs.gla.ac.uk
Dear Coleagues,
I would like to announce the description of a new database specification
language, which is available both electronically and in hard copy and
should be of interest to the data type community.
Abstract.
The database specification language Ruslan is designed for writing
specifications of databases of various models and application programs
manipulating them. The language is based on the concept of an
entity-structured specification, which is a collection of specifications
of data types, kinds, type and kind classes, and detached operations and
is a special case of a many-sorted algebraic specification. This
technique permits the specification of both object-dependent and generic
(polymorphic) data types.
The language definition is distributed over two documents. The first
one (Preprint 28) gives an algebraic background for entity-structured
specifications and introduces syntactic constructions of the language.
Two sorts of entities are distinguished, data types, and type kinds. A
data type is a tool for constructing data units represented in programs
by data terms and a kind is a tool for constructing type units
represented in programs by type terms. The language of type terms
is intermixed with the language of data terms. When a data term is used
for constructing a type term, an object-dependent type term is created.
Type terms are mapped into type specifications. Depending on the kind of
a type term, a concrete, generic, or object-dependent type is specified in
this way. Both types and kinds can belong to definite type or kind classes.
The second document (Preprint 29) mainly contains a specification of an
imperative database programming language. The following concrete data
types are specified: Boolean, Natural, Integer, Decimal, Character, and
Memory. The following kinds and related data types are specified: VARTYPE
(variable types), CONSTYPE (constant types), SEQTYPE (sequence types),
ARRTYPE (array types), ENUTYPE (enumeration types), RANTYPE (range
types), RECTYPE (record types), UNITYPE (union types), ROUTYPE (routine
types), SUBTYPE (predicate subtypes), FILETYPE (Pascal file types),
RELTYPE (relation types). A kind class introducing operations for checking
type equivalence and type approximation and some popular type
classes are also specified.
To obtain a hard copy, please send e-mail to Natalia Cheremnych:
cher@isi.itfs.nsk.su with the indication of your post address.
To obtain a compressed postscript file by anonymous ftp, proceed as follows:
ftp math.tulane.edu
name: anonymous
password: <your email address>
cd pub/zamulin
binary
get Ruslan1.ps.Z
get Ruslan2.ps.Z
All inquiries, comments, and suggestions should be sent to the address
indicated below.
Thank you,
Alexandre Zamulin
----------------------------------------------------------------------
Alexandre Zamulin e-mail: zam@cs.usm.my
Computer Science Section
School of Mathematics and Computer Science fax, phone:+60 4 6573335
University Sains Malaysia
11800 Penang, Malaysia
-----------------------------------------------------------------------