PROgrammed Graph REwriting Systems
<language> (PROGRES) A very high level language based on graph grammars,
developed by Andy Scheurr
<email@example.com> and Albert Zuendorf
<firstname.lastname@example.org> of RWTH, Aachen in 1991.
PROGRES supports structurally object-oriented specification of attributed graph
structures with multiple inheritance hierarchies and types of types (for
parametric polymorphism). It also supports declarative/relational specification
of derived attributes, node sets, binary relationships (directed edges) and
Boolean constraints, rule-oriented/visual specification of parameterised graph
rewrite rules with complex application conditions, nondeterministic and
imperative programming of composite graph transformations (with built-in
backtracking and cancelling arbitrary sequences of failing graph modifications).
It is used for implementing abstract data types with graph-like internal
structure, as a visual language for the graph-oriented database GRAS, and as a
rule-oriented language for prototyping nondeterministically specified data/rule
PROGRES has a formally defined semantics based on "PROgrammed Graph Rewriting
Systems". It is an almost statically typed language which additionally offers
"down casting" operators for run time checked type casting/conversion (in order
to avoid severe restrictions concerning the language's expressiveness).
Version RWTH 5.10 includes an integrated environment.
[A. Scheurr, "Introduction to PROGRES, an Attribute Graph Grammar Based
Specification Language", in Proc WG89 Workshop on Graphtheoretic Concepts in
Computer Science", LNCS 411, Springer 1991].
ftp://ftp.informatik.rwth-aachen.de/pub/Unix/PROGRES/ for Sun-4.
Programmable Logic Controller « Programmable
Read-Only Memory « Programmed Data Processor «
PROgrammed Graph REwriting Systems » programmer
» Programmer Brain Damage » Programmer's Cheer