This just in: WG17 changes course
Tired of being cursed by all for standardization problems and mishaps, the next ISO Prolog Core standard revision will mandate:
-
Forward-chaining inference mechanism. Stated reason: you cannot move Prolog forward doing backward reasoning.
-
Replacement of stream-based input/output with revamped, time-proved, Edinburgh-style input/output. Highlights:
see_what/1
andtold_you_so/0
built-in predicates for DWIM user-friendly semantics. -
New character escape
0'\q
unexpectedly quits Prolog for those embarrassing programming moments. -
Due to all controversy regarding
char_conversion/2
, from now on all standards will be published in Esperanto. -
Attempting printing of cyclic terms will endlessly print the lyrics of “99 bottles of beer on the wall”.
-
New operator class
yfy
for decomposing operands. -
Singleton variable report by
read_term/3
is deprecated as it’s not politically correct to complain about a variable choice of life-style. In addition, for privacy reasons, thevariable_names/1
option is also deprecated. -
New value for the
unknown
flag,true
, provides a sharp decrease on the number of “no
”s reported by Prolog interpreters. Specially relevant in educational environments, it will hopefully contribute to make the language more attractive to students. -
Database built-in predicates are enhanced with an optional argument for cloud computing. Handy for hiding your dirty programming tricks.
-
The de facto standard
freeze/2
predicate is added to the standard but with an extra argument that allows the user to specify a time-out value, freeing the goal to fulfill its destiny. -
Further details are still being worked out but stay tuned.
Hoping that no one here is humor-impaired, Happy April Fools’ Day :-)