Strictly speaking for every standard that has implementation
specific parts or extension parts, there are dialects which
fill in these implementation specific parts or provide these
extension parts. In the ISO Prolog standard some of these
parts have flags, others don’t have flags, or there is no agreement
among flags when there are extension efforts. An example
of such a flag is the following. Compare this:
/* GNU Prolog 1.5.0 */
?- current_prolog_flag(bounded, X).
X = true.
?- X = 123456789123456789123456789.
error(syntax_error('integer overflow'))
To this here:
/* SWI-Prolog 10.1.14 */
?- current_prolog_flag(bounded, X).
X = false.
?- X = 123456789123456789123456789.
X = 123456789123456789123456789.
I believe such a flag is not only a system flag, but also a
language flag. Since it determines which integer numbers
are accepted and which integer numbers are not accepted.
So in as far there are language dialects. But maybe calling
these parameters “limits” would be more useful. Some
newer standardization efforts like WebGPU by W3C have a
huge battery of “limits”, that show gestalt information of the
underlying GPU hardware and/or GPU adapter. They are
tidy collected in one place, where “limits” have a couple of
meta properties guiding end-users and implementors:
WebGPU 3.6.2. Limits - 1 September 2026
https://www.w3.org/TR/webgpu/#limits