tool: PROGRES
-
Language:
|
PROGRES
|
|---|
-
Version:
|
RWTH 5.10
|
|---|
-
Parts:
|
environment, interpreter, database, ?
|
|---|
-
Author:
|
Dr. Andy Schuerr <andy@i3.informatik.rwth-aachen.de>,
Albert Zuendorf <albert@i3.informatik.rwth-aachen.de>
|
|---|
-
Location:
|
|
|---|
-
Description:
|
PROGRES is an integrated environment for a very high level
programming language which has a formally defined semantics
based on "PROgrammed Graph Rewriting Systems". This language
supports the following programming paradigms/purposes: 1)
Structurally object-oriented specification of attributed graph
structures with multiple inheritance hierarchies and types of
types (for parametric polymorphy). 2) Declarative/relational
specification of derived attributes, node sets, binary
relationships (directed edges), and Boolean constraints. 3)
Rule-oriented/visual specification of parameterized graph
rewrite rules with complex application conditions. 4)
Nondeterministic & imperative programming of composite graph
transformations (with built-in backtracking and cancelling
arbitrary sequences of failing graph modifications).
Therefore, PROGRES may be used as 1) a very high level
programming language for implementing abstract data types with
a graph-like internal structure, 2) a visual database
programming language for the graph-oriented database system
GRAS (which is available as free software under the GNU license
conditions), 3) a rule-oriented language for rapid prototyping
nondeterministically specified data/rule base transformations.
Furthermore, PROGRES is an almost statically typed language
which additionally offers "down casting" operators for runtime
checked type casting/conversion (in order to avoid severe
restrictions concerning the language's expressiveness).
PROGRES is meant to be used with GRAS, which is also available
|
|---|
-
Updated:
|
November 2nd, 1993
|
|---|
category: database
summary, or
expanded.
category: special purpose languages
summary, or
expanded.
|
|