roadmap
roadmap copied to clipboard
Statically-checked type, mode and determinism declarations
Types, modes and determinism are essential properties for the use of Prolog for programming-in-the-large. These declarations are critical for documentation. They can be statically checked and thus can prevent at compile time some runtime errors or unexpected failures. They can remain optional, which is handy for programming-in-the-small.
Some pointers:
- the SWI-Prolog manual
- Tom'Blog
- the Mercury programming language
There are several SWI Packs about this as well:
- mavis by Michael Hendricks
- type_check by Tom Schrijvers
- typedef by Samer Abdallah
thanks for the links, I’ll have a look. Note that 3 packs mean there’s a need!
3 packs also means that there's a number of competing ways of solving the problem - Which isn't a bad thing.