Appeared in Volume 10/1, February 1997
'TYPICAL for Annotated Prolog' type checks Prolog programs extended with type annotations.
The type system includes subtyping and parametric polymorphism. Predicate type declarations used in TYPICAL can be more precise than declarations in conventional type systems because TYPICAL allows type constraints in parametric predicates declarations.
There are no restrictions on the Prolog programs. For instance, you do not have to restrict your code to a subset of Prolog in order to type check it. On the other hand, type checking will not always ensure type safety.
TYPICAL is written in Prolog - of course, with type annotations - and has been tested with SICStus Prolog, Quintus Prolog, and SWI-Prolog.
Further information, the package, examples, and documentation are available at:
You can also contact:
Praktische Informatik VIII
58084 Hagen, Germany