Did you know ... Search Documentation:
prolog_versions.pl -- Demand specific Prolog versions
PublicShow source

This library is provided to make it easier to reason about software versions, in particular require that that hosting Prolog system is of the right version and provides the features required by the library or application.

To be done
- Not only provide a minimal version but a more version ranges, exclude certain versions, etc.
- More features and better messages to help the user resolving problems.
Source require_prolog_version(+Required:atom, +Features:list) is det
Claim that the running Prolog version is at least version Required and provides the requested Features. Required is an atom or string that provides the version as
Major.Minor[[.Patch][[-GitRev],-GitHash]]]

Example strings are '8.5', '8.5.0', '8.5.0-50', '8.5.0-69-gad38e8ad8`. The last two require fetching the sources from git or using the Windows daily builds.

Features is a list of required or preferred features. Individual features are:

warning(Feature)
Only print a warning instead of throwing an error.
threaded
Demand support for multi-threading
rational
Demand native support for rational numbers
library(Lib)
Demand library(Lib) to be present. Thde library not being there may indicate an incomplete installation. For example library(pce) to demand xpce graphics support.
Flag
Demand current_prolog_flag(Flag, true) to be true.
FlagValue
If FlagValue is Flag(Value), demand current_prolog_flag(Flag, Value) to be true.
Errors
- prolog_version(Required, Found)
- prolog_feature(Feature))