Question:
Whats the longest article you can copy and paste from wikipedia?
Girugamesh
2007-06-06 10:46:03 UTC
10 points for the winner
Eight answers:
imapirateaarr
2007-06-06 10:50:50 UTC
Prolog standards compliance

From Wikipedia, the free encyclopedia

Jump to: navigation, search

This article or section was considered for deletion and requires cleanup according to the discussion.

Please help improve this article to meet Wikipedia's quality standards or discuss the issue on the talk page.



Prolog is a logic programming language. The ISO Prolog standard: ISO/IEC 13211-1[1], published in 1995, aims to standardise the existing practices of the many implementations of Prolog. It has clarified aspects of the language that were previously ambiguous.

Contents

[hide]



* 1 Validation

* 2 Prolog versions

* 3 Syntax of terms

o 3.1 Operators

o 3.2 Lists and braces {}

o 3.3 Double quotes

* 4 Control structures

o 4.1 true & fail

o 4.2 call

o 4.3 Cuts

o 4.4 Conjunction and disjuction

o 4.5 if-then

o 4.6 if-then-else

o 4.7 Catch

* 5 Unification

o 5.1 Unify

o 5.2 Unify with occurs-check

o 5.3 Non-unification

* 6 Type tests

o 6.1 Type tests: var

o 6.2 Atoms (constants)

o 6.3 Type tests: integers

o 6.4 Type tests: float

o 6.5 Type tests: atomic

o 6.6 Type tests: compound

o 6.7 Type tests: nonvar

o 6.8 Type tests: number

o 6.9 Term comparison

* 7 Creating and decomposing terms

o 7.1 functor

o 7.2 arg

o 7.3 univ

o 7.4 copy_term

* 8 Arithmetic comparisons

* 9 Manipulating the knowledge base

o 9.1 clause

o 9.2 current_predicate

o 9.3 asserta

o 9.4 assertz

o 9.5 retract

o 9.6 abolish

* 10 Finding all solutions to a query

o 10.1 findall

o 10.2 bagof

o 10.3 setof

* 11 Input and Output

o 11.1 current_input

o 11.2 current_output

o 11.3 set_input

o 11.4 set_output

o 11.5 open

o 11.6 close

o 11.7 flush_output

o 11.8 Stream properties

o 11.9 At end of stream test

o 11.10 Set stream properties

o 11.11 Reading characters: getchar and getcode

o 11.12 Writing characters: peekchr & peekcde

o 11.13 Writing characters: putchar & putcode & nl

o 11.14 Reading characters: getbyte

o 11.15 Writing characters: peekbte

o 11.16 Writing characters: putbyte

o 11.17 Reading terms: read

o 11.18 Writing terms: write

o 11.19 Operator precedence

o 11.20 current_op

* 12 Character conversion

o 12.1 char_conversion

o 12.2 current_char_conversion

* 13 Control structures (cont)

o 13.1 not

o 13.2 once

o 13.3 repeat

* 14 Character-string operations

o 14.1 atom_length

o 14.2 atom_concat

o 14.3 sub_atom

o 14.4 atom_chars

o 14.5 atom_codes

o 14.6 char_code

o 14.7 number_chars

o 14.8 number_codes

* 15 Flags

o 15.1 Set_prolog_flag

o 15.2 Current_prolog_flag

o 15.3 Terminating execution

* 16 Arithmetic: Where expressions are evaluated

* 17 Arithmetic: functors allowed in expressions

o 17.1 pow

o 17.2 sin

o 17.3 cos

o 17.4 atan

o 17.5 exp1

o 17.6 log

o 17.7 sqrt

* 18 Bitwise operations

o 18.1 Right shift

o 18.2 Left shift

o 18.3 Bitwise and

o 18.4 Bitwise or

o 18.5 Bitwise negation

* 19 References



[edit] Validation



The following tables compare the compliance of Prolog implementations with the ISO standard ISO/IEC 13211. The results were obtained by Péter Szabó and Péter Szeredi[2].



[edit] Prolog versions



* SICStus 3.12.3 (running in ISO mode) [1]

* SWI-Prolog 5.4.7 (running in ISO mode, garbage collection off).

* Yap 5.0.1 (ISO mode disabled) [2]

* gprolog 1.2.16

* Ciao-prolog 1.10p6 [3]

* aprolog 1.22



[edit] Syntax of terms

Prolog term_sx:1 term_sx:2 term_sx:3 term_sx:4 term_sx:5 term_sx:6 term_sx:7 term_sx:8

aprolog Yes Yes Yes Yes Yes Yes Yes Yes

ciao No No No No No No No No

gprolog Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes No No No Yes Yes Yes

yap No No No No No No No No



[edit] Operators

Prolog ops:1 ops:2 ops:3 ops:4 ops:5 ops:6 ops:7 ops:8 ops:9 ops:10 ops:11 ops:12 ops:13 ops:14 ops:15

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao No No No No No No No No No No No No No No No

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

yap No No No No No No No No No No No No No No No



[edit] Lists and braces {}

Prolog list:1 list:2 list:3 curly:1 curly:2

aprolog Yes Yes Yes Yes Yes

ciao No No No No No

gprolog Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes

yap No No No No No



[edit] Double quotes

Prolog dbl_qts:1 dbl_qts:2 dbl_qts:3 dbl_qts:4 dbl_qts:5 dbl_qts:6 dbl_qts:7 dbl_qts:8 dbl_qts:9 dbl_qts:10 dbl_qts:11 dbl_qts:12

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao No No No No No No No No No No No No

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

yap No No No No No No No No No No No No



[edit] Control structures



[edit] true & fail

Prolog true:1 fail:1

aprolog Yes Yes

ciao Yes Yes

gprolog Yes Yes

sicstus Yes Yes

sicstus4 Yes Yes

swipl Yes Yes

yap Yes Yes



[edit] call

Prolog call:1 call:2 call:3 call:4 call:5 call:6 call:7 call:8 call:9 call:10 call:11 call:12 call:13 call:14 call:15

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes No No No No No No Yes Yes No No Yes

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes No No No

yap Yes Yes Yes Yes Yes Yes Yes No No No Yes No No No No



[edit] Cuts

Prolog cut:1 cut:2 cut:3 cut:4 cut:5 cut:6 cut:7 cut:8 cut:9 cut:10 cut:11 cut:12

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes No No No No No No No No No

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

yap Yes Yes Yes No No No No No No No No No



[edit] Conjunction and disjuction

Prolog and:1 and:2 and:3 or:1 or:2 or:3 or:4 or:5

aprolog Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes Yes Yes

gprolog Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes

yap Yes Yes Yes Yes Yes Yes Yes Yes



[edit] if-then

Prolog if_then:1 if_then:2 if_then:3 if_then:4 if_then:5 if_then:6

aprolog Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes

gprolog Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes

yap Yes Yes Yes Yes Yes Yes



[edit] if-then-else

Prolog ifthels:1 ifthels:2 ifthels:3 ifthels:4 ifthels:5 ifthels:6 ifthels:7 ifthels:8 ifthels:9

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes Yes Yes Yes

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes Yes

yap Yes Yes Yes Yes No Yes No No No



[edit] Catch

Prolog catch:1 catch:2 catch:3 catch:4 catch:5 catch:6 catch:7 catch:8

aprolog Yes Yes Yes Yes Yes Yes Yes Yes

ciao No No Yes No No Yes No Yes

gprolog Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes

yap Yes Yes Yes Yes Yes No No No



[edit] Unification



[edit] Unify

Prolog unify:1 unify:2 unify:3 unify:4 unify:5 unify:6 unify:7 unify:8 unify:9 unify:10 unify:11 unify:12 unify:13 unify:14 unify:15 unify:16

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

yap Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes



[edit] Unify with occurs-check

Prolog uni_woc:1 uni_woc:2 uni_woc:3 uni_woc:4 uni_woc:5 uni_woc:6 uni_woc:7 uni_woc:8 uni_woc:9 uni_woc:10 uni_woc:11 uni_woc:12 uni_woc:13 uni_woc:14 uni_woc:15 uni_woc:16

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

yap Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes



[edit] Non-unification

Prolog not_uni:1 not_uni:2 not_uni:3 not_uni:4 not_uni:5 not_uni:6 not_uni:7 not_uni:8 not_uni:9 not_uni:10 not_uni:11 not_uni:12 not_uni:13 not_uni:14 not_uni:15

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

yap Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes



[edit] Type tests



[edit] Type tests: var

Prolog var:1 var:2 var:3 var:4

aprolog Yes Yes Yes Yes

ciao Yes Yes Yes Yes

gprolog Yes Yes Yes Yes

sicstus Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes

swipl Yes Yes Yes Yes

yap Yes Yes Yes Yes



[edit] Atoms (constants)

Prolog atom:1 atom:2 atom:3 atom:4 atom:5 atom:6 atom:7

aprolog Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes Yes

gprolog Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes

yap Yes Yes Yes Yes Yes Yes Yes



[edit] Type tests: integers

Prolog integer:1 integer:2 integer:3 integer:4 integer:5

aprolog Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes

gprolog Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes

yap Yes Yes Yes Yes Yes



[edit] Type tests: float

Prolog float:1 float:2 float:3 float:4 float:5

aprolog Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes

gprolog Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes

yap Yes Yes Yes Yes Yes



[edit] Type tests: atomic

Prolog atomic:1 atomic:2 atomic:3 atomic:4 atomic:5

aprolog Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes

gprolog Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes

yap Yes Yes Yes Yes Yes



[edit] Type tests: compound

Prolog compound:1 compound:2 compound:3 compound:4 compound:5 compound:6 compound:7 compound:8

aprolog Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes Yes Yes

gprolog Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes

yap Yes Yes Yes Yes Yes Yes Yes Yes



[edit] Type tests: nonvar

Prolog nonvar:1 nonvar:2 nonvar:3 nonvar:4 nonvar:5 nonvar:6

aprolog Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes

gprolog Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes

yap Yes Yes Yes Yes Yes Yes



[edit] Type tests: number

Prolog number:1 number:2 number:3 number:4 number:5

aprolog Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes

gprolog Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes

yap Yes Yes Yes Yes Yes



[edit] Term comparison

Prolog trm_cmp:1 trm_cmp:2 trm_cmp:3 trm_cmp:4 trm_cmp:5 trm_cmp:6 trm_cmp:7 trm_cmp:8 trm_cmp:9 trm_cmp:10

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

yap Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

Prolog trm_cmp:11 trm_cmp:12 trm_cmp:13 trm_cmp:14 trm_cmp:15 trm_cmp:16 trm_cmp:17 trm_cmp:18 trm_cmp:19

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes Yes Yes Yes

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes Yes

yap Yes Yes Yes Yes Yes Yes Yes Yes Yes



[edit] Creating and decomposing terms



[edit] functor

Prolog functor:1 functor:2 functor:3 functor:4 functor:5 functor:6 functor:7 functor:8 functor:9

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes Yes Yes Yes

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes Yes

yap Yes Yes Yes Yes Yes Yes Yes Yes Yes

Prolog functor:10 functor:11 functor:12 functor:13 functor:14 functor:15 functor:16 functor:17 functor:18

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes No No No No No No No

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes No Yes

yap Yes Yes Yes Yes Yes Yes Yes No Yes



[edit] arg

Prolog arg:1 arg:2 arg:3 arg:4 arg:5 arg:6 arg:7 arg:8 arg:9 arg:10 arg:11 arg:12 arg:13 arg:14 arg:15 arg:16

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes Yes No No No No Yes No No Yes No

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes No Yes Yes Yes Yes Yes Yes Yes Yes

yap Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes No Yes Yes Yes



[edit] univ

Prolog univ:1 univ:2 univ:3 univ:4 univ:5 univ:6 univ:7 univ:8 univ:9

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes No No No

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes Yes

yap Yes Yes Yes Yes Yes Yes Yes Yes Yes

Prolog univ:10 univ:11 univ:12 univ:13 univ:14 univ:15 univ:16 univ:17 univ:18

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao No No No No No Yes No No No

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes No No ?

yap Yes Yes Yes Yes Yes Yes No Yes No



[edit] copy_term

Prolog cp_term:1 cp_term:2 cp_term:3 cp_term:4 cp_term:5 cp_term:6 cp_term:7 cp_term:8 cp_term:9

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes Yes Yes Yes

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes Yes

yap Yes Yes Yes Yes Yes Yes Yes Yes Yes



[edit] Arithmetic comparisons

Prolog ari_cmp:1 ari_cmp:2 ari_cmp:3 ari_cmp:4 ari_cmp:5 ari_cmp:6 ari_cmp:7 ari_cmp:8 ari_cmp:9 ari_cmp:10

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

yap Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

Prolog ari_cmp:11 ari_cmp:12 ari_cmp:13 ari_cmp:14 ari_cmp:15 ari_cmp:16 ari_cmp:17 ari_cmp:18 ari_cmp:19 ari_cmp:20

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes Yes Yes No No

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

yap Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

Prolog ari_cmp:21 ari_cmp:22 ari_cmp:23 ari_cmp:24

aprolog Yes Yes Yes Yes

ciao No No No No

gprolog Yes Yes Yes Yes

sicstus Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes

swipl Yes Yes Yes Yes

yap Yes Yes Yes Yes



[edit] Manipulating the knowledge base



[edit] clause

Prolog clause:1 clause:2 clause:3 clause:4 clause:5 clause:6 clause:7 clause:8 clause:9 clause:10 clause:11 clause:12

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes No No Yes Yes No No No No Yes No

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes Yes No Yes No

yap Yes Yes Yes Yes Yes Yes Yes Yes No No Yes No



[edit] current_predicate

Prolog cur_prd:1 cur_prd:2 cur_prd:3 cur_prd:4 cur_prd:5 cur_prd:6 cur_prd:7 cur_prd:8 cur_prd:9

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes No No No Yes

gprolog Yes Yes Yes Yes Yes Yes Yes No Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes No No No Yes

swipl Yes No Yes Yes Yes No No No Yes

yap Yes Yes Yes Yes Yes No No No Yes



[edit] asserta

Prolog asserta:1 asserta:2 asserta:3 asserta:4 asserta:5 asserta:6 asserta:7 asserta:8

aprolog Yes Yes Yes Yes Yes Yes Yes Yes

ciao No No No No No No No Yes

gprolog Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes No Yes

yap Yes Yes Yes Yes No Yes No Yes



[edit] assertz

Prolog assertz:1 assertz:2 assertz:3 assertz:4 assertz:5 assertz:6 assertz:7

aprolog Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes Yes

gprolog Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes

yap Yes Yes Yes Yes No Yes No



[edit] retract

Prolog retract:1 retract:2 retract:3 retract:4 retract:5 retract:6 retract:7 retract:8 retract:9 retract:10 retract:11

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao No No No No Yes No Yes No No No No

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes No

yap Yes Yes Yes Yes Yes No Yes No Yes Yes No



[edit] abolish

Prolog abolish:1 abolish:2 abolish:3 abolish:4 abolish:5 abolish:6 abolish:7 abolish:8 abolish:9 abolish:10 abolish:11 abolish:12 abolish:13 abolish:14

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes No No No No No No No No No No No No No

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes No No Yes Yes Yes Yes Yes Yes No No Yes No

swipl Yes Yes No No No Yes Yes Yes Yes Yes No Yes Yes Yes

yap Yes Yes No No No Yes Yes Yes No Yes Yes No Yes No



[edit] Finding all solutions to a query



[edit] findall

Prolog findall:1 findall:2 findall:3 findall:4 findall:5 findall:6 findall:7 findall:8 findall:9

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes Yes Yes No

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes No

yap Yes Yes Yes Yes Yes Yes Yes No No



[edit] bagof

Prolog bagof:1 bagof:2 bagof:3 bagof:4 bagof:5 bagof:6 bagof:7 bagof:8 bagof:9 bagof:10 bagof:11 bagof:12 bagof:13 bagof:14

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes Yes Yes No Yes No No Yes Yes

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes No Yes Yes Yes Yes Yes

yap Yes Yes Yes Yes Yes Yes Yes Yes No Yes Yes Yes Yes No



[edit] setof

Prolog setof:1 setof:2 setof:3 setof:4 setof:5 setof:6 setof:7 setof:8 setof:9 setof:10

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

yap Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

Prolog setof:11 setof:12 setof:13 setof:14 setof:15 setof:16 setof:17 setof:18 setof:19 setof:20

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao No No No No No Yes Yes Yes Yes Yes

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl No Yes Yes Yes Yes Yes Yes Yes Yes Yes

yap No Yes Yes Yes Yes Yes Yes Yes Yes Yes

Prolog setof:21 setof:22 setof:23 setof:24 setof:25 setof:26 setof:27 setof:28 setof:29

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao No No No No Yes Yes Yes Yes No

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes No Yes Yes No

yap Yes Yes Yes Yes Yes No No Yes No



[edit] Input and Output



[edit] current_input

Prolog currinp:1 currinp:2 currinp:3 currinp:4 currinp:5

aprolog Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes

gprolog Yes Yes Yes No Yes

sicstus Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes

yap Yes Yes Yes No Yes



[edit] current_output

Prolog currout:1 currout:2 currout:3 currout:4 currout:5

aprolog Yes Yes Yes Yes Yes

ciao Yes No Yes No Yes

gprolog Yes Yes Yes No Yes

sicstus Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes

swipl Yes Yes Yes No Yes

yap Yes Yes Yes No Yes



[edit] set_input

Prolog set_in:1 set_in:2 set_in:3 set_in:4 set_in:5

aprolog Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes

gprolog Yes Yes No Yes Yes

sicstus Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes

yap Yes Yes No No No



[edit] set_output

Prolog set_out:1 set_out:2 set_out:3 set_out:4 set_out:5

aprolog Yes Yes Yes Yes Yes

ciao Yes Yes Yes No Yes

gprolog Yes Yes No Yes Yes

sicstus Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes

swipl Yes Yes No No No

yap Yes Yes No No No



[edit] open

Prolog open:1 open:2 open:3 open:4 open:5 open:6 open:7 open:8 open:9

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao No No No No Yes Yes No No No

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes Yes

yap No Yes Yes Yes Yes Yes Yes Yes Yes

Prolog open:10 open:11 open:12 open:13 open:14 open:15 open:16 open:17

aprolog Yes Yes Yes Yes Yes Yes Yes Yes

ciao No No Yes Yes No Yes No No

gprolog Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes No No Yes Yes Yes No No

yap Yes Yes Yes Yes Yes Yes Yes No



[edit] close

Prolog close:1 close:2 close:3 close:4 close:5 close:6 close:7 close:8 close:9

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes Yes Yes Yes

gprolog Yes Yes Yes Yes Yes Yes Yes No Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes Yes

yap No Yes Yes Yes Yes Yes Yes No No



[edit] flush_output

Prolog flush_o:1 flush_o:2 flush_o:3 flush_o:4 flush_o:5 flush_o:6

aprolog Yes Yes Yes Yes Yes Yes

ciao No Yes Yes No Yes No

gprolog Yes No Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes

swipl Yes No Yes No Yes Yes

yap No No Yes No No No



[edit] Stream properties

Prolog strprop:1 strprop:2 strprop:3 strprop:4 strprop:5 strprop:6 strprop:7

aprolog Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes Yes

gprolog Yes No Yes Yes No No Yes

sicstus Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes

yap No No No Yes No No No



[edit] At end of stream test

Prolog atendst:8 atendst:9 atendst:10 atendst:11 atendst:12 atendst:13 atendst:14

aprolog Yes Yes Yes Yes Yes Yes Yes

ciao No No No No No No No

gprolog Yes No Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes

swipl Yes No No Yes Yes Yes Yes

yap Yes No No No No No No



[edit] Set stream properties

Prolog setstrp:1 setstrp:2 setstrp:3 setstrp:4 setstrp:5 setstrp:6

aprolog Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes

gprolog Yes No No Yes No Yes

sicstus Yes Yes Yes Yes Yes Yes

sicstus4 No Yes No No Yes No

swipl Yes Yes Yes Yes Yes Yes

yap No Yes No No Yes No



[edit] Reading characters: getchar and getcode

Prolog getchar:1 getcode:2 getchar:3 getcode:4 getchar:5 getcode:6 getchar:7 getcode:8 getchar:9 getcode:10

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao No No No No No No No No No No

gprolog Yes Yes Yes Yes Yes Yes Yes Yes No No

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

yap No No No No No No No No No No

Prolog getchar:11 getcode:12 getchar:13 getchar:14 getchar:15 getchar:16 getchar:17 getchar:18 getchar:19 getchar:20

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes No No Yes No Yes No No

gprolog Yes Yes Yes Yes Yes No Yes Yes No No

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes No Yes

swipl Yes Yes Yes No No No No Yes No No

yap Yes Yes Yes Yes Yes No No No No No

Prolog getchar:21 getchar:22 getcode:23 getcode:24 getcode:25 getcode:26 getcode:27 getcode:28 getcode:29 getcode:30

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao No No Yes No No No Yes No Yes No

gprolog Yes Yes Yes Yes Yes Yes No Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes No Yes No No No No No Yes Yes

yap No No Yes No No No No No No No

Prolog getcode:31 getcode:32 getcode:33

aprolog Yes Yes Yes

ciao No No No

gprolog No Yes Yes

sicstus Yes Yes Yes

sicstus4 Yes Yes No

swipl No Yes No

yap No No No



[edit] Writing characters: peekchr & peekcde

Prolog peekchr:1 peekcde:2 peekchr:3 peekcde:4 peekchr:5 peekcde:6 peekchr:7 peekcde:8 peekchr:9 peekcde:10

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

yap No No No No No No No No No No

Prolog peekchr:11 peekchr:12 peekcde:13 peekchr:14 peekchr:15 peekchr:16 peekchr:17 peekchr:18 peekchr:19 peekchr:20

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

gprolog No Yes Yes Yes Yes Yes No Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

yap No Yes Yes Yes Yes Yes No No No No

Prolog peekchr:21 peekchr:22 peekcde:23 peekcde:24 peekcde:25 peekcde:26 peekcde:27 peekcde:28 peekcde:29 peekcde:30

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

gprolog Yes Yes Yes Yes Yes Yes No Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

yap No No Yes No No No No No No No

Prolog peekcde:31 peekcde:32 peekcde:33

aprolog Yes Yes Yes

ciao Yes Yes Yes

gprolog No Yes Yes

sicstus Yes Yes Yes

sicstus4 Yes Yes No

swipl Yes Yes Yes

yap No No No



[edit] Writing characters: putchar & putcode & nl

Prolog putchar:1 putchar:2 putchar:3 putchar:4 putchar:5 putchar:6 putchar:7 putchar:8 putchar:9 putchar:10

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao No No No No No No No No No No

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes Yes No

yap No No No No No No No No No No

Prolog nl:11 nl:12 putchar:13 putchar:14 putchar:15 putchar:16 putchar:17 putcode:18 putcode:19 putcode:20

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao No Yes No No No Yes No Yes Yes Yes

gprolog Yes Yes Yes Yes Yes Yes No Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes No Yes Yes Yes

swipl Yes Yes Yes Yes No Yes No Yes Yes No

yap Yes Yes Yes Yes No No No Yes Yes No

Prolog putcode:21 putcode:22 putcode:23 putcode:24

aprolog Yes Yes Yes Yes

ciao Yes Yes Yes Yes

gprolog Yes Yes Yes No

sicstus Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes

swipl Yes No No No

yap No No No No



[edit] Reading characters: getbyte

Prolog getbyte:1 getbyte:2 getbyte:3 getbyte:4 getbyte:5 getbyte:6 getbyte:7 getbyte:8 getbyte:9 getbyte:10 getbyte:11 getbyte:12 getbyte:13

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

gprolog Yes Yes Yes No Yes Yes Yes Yes No Yes Yes No No

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes No Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

yap No No No No Yes Yes No No No No No No No



[edit] Writing characters: peekbte

Prolog peekbte:1 peekbte:2 peekbte:3 peekbte:4 peekbte:5 peekbte:6 peekbte:7 peekbte:8 peekbte:9 peekbte:10 peekbte:11 peekbte:12 peekbte:13

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao No No No No Yes Yes No No Yes No Yes No No

gprolog Yes Yes Yes Yes Yes Yes Yes Yes No Yes Yes No No

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes No Yes

swipl Yes Yes Yes Yes Yes Yes No No No No Yes No No

yap No No No No Yes Yes No No No No No No No



[edit] Writing characters: putbyte

Prolog putbyte:1 putbyte:2 putbyte:3 putbyte:4 putbyte:5 putbyte:6 putbyte:7 putbyte:8 putbyte:9 putbyte:10 putbyte:11 putbyte:12 putbyte:13

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao No No No No Yes No No No No No Yes Yes Yes

gprolog Yes Yes Yes Yes Yes Yes Yes Yes No Yes Yes No ?

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes No

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes No Yes Yes Yes No

swipl Yes Yes Yes No Yes Yes No Yes No No Yes No Yes

yap No No No No Yes No No No No No Yes No ?



[edit] Reading terms: read

Prolog read:1 read:2 read:3 read:4 read:5 read:6 read:7 read:8 read:9 read:10

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

gprolog No No No No Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

yap No No No No No No No Yes Yes Yes

Prolog read:11 read:12 read:13 read:14 read:15 read:16 read:17 read:18 read:19 read:20

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

gprolog Yes No Yes Yes Yes No Yes No No No

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes No No Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

yap Yes No Yes Yes Yes No No No No No

Prolog read:21 read:22 read:23 read:24

aprolog Yes Yes Yes Yes

ciao Yes Yes Yes Yes

gprolog No Yes Yes Yes

sicstus Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes

swipl Yes Yes Yes Yes

yap Yes Yes Yes Yes



[edit] Writing terms: write

Prolog write:1 write:2 write:3 write:4 write:5 write:6 write:7 write:8 write:9 write:10

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao No No No No No No No Yes Yes Yes

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes No Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

yap No No No No No No No Yes Yes Yes

Prolog write:11 write:12 write:13 write:14 write:15 write:16 write:17 write:18 write:19 write:20

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes No Yes Yes No Yes

gprolog Yes Yes Yes Yes Yes Yes No Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes No No Yes No Yes

yap Yes Yes Yes Yes Yes No No Yes No No

Prolog write:21

aprolog Yes

ciao No

gprolog No

sicstus Yes

sicstus4 No

swipl No

yap No



[edit] Operator precedence

Prolog op:1 op:2 op:3 op:4 op:5 op:6 op:7 op:8 op:9 op:10

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

yap Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

Prolog op:11 op:12 op:13 op:14 op:15 op:16 op:17 op:18 op:19

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes Yes Yes Yes

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes Yes

yap Yes Yes Yes Yes Yes Yes Yes Yes Yes



[edit] current_op

Prolog currop:1 currop:2 currop:3 currop:4 currop:5

aprolog Yes Yes Yes Yes Yes

ciao No No No No No

gprolog Yes Yes Yes No Yes

sicstus Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes

swipl Yes Yes No No No

yap Yes Yes Yes No Yes



[edit] Character conversion



[edit] char_conversion

Prolog charcnv:1 charcnv:2 charcnv:3 charcnv:4 charcnv:5 charcnv:6 charcnv:7 charcnv:8 charcnv:9 charcnv:10 charcnv:11 charcnv:12

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

gprolog No No Yes No Yes No No No No No Yes No

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

yap No No No No No No No No No No No No



[edit] current_char_conversion

Prolog crchcnv:1

aprolog Yes

ciao No

gprolog Yes

sicstus Yes

sicstus4 Yes

swipl No

yap No



[edit] Control structures (cont)



[edit] not

Prolog not:1 not:2 not:3 not:4 not:5 not:6 not:7 not:8

aprolog Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes Yes Yes

gprolog Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes

yap Yes Yes Yes Yes Yes Yes Yes Yes



[edit] once

Prolog once:1 once:2 once:3 once:4 once:5 once:6 once:7

aprolog Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes Yes

gprolog Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes

yap Yes Yes Yes Yes Yes No Yes



[edit] repeat

Prolog repeat:1 repeat:2

aprolog Yes Yes

ciao No Yes

gprolog Yes Yes

sicstus Yes Yes

sicstus4 Yes Yes

swipl Yes Yes

yap No Yes



[edit] Character-string operations



[edit] atom_length

Prolog atomlen:1 atomlen:2 atomlen:3 atomlen:4 atomlen:5 atomlen:6 atomlen:7 atomlen:8 atomlen:9 atomlen:10 atomlen:11

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

yap Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes



[edit] atom_concat

Prolog atomcat:1 atomcat:2 atomcat:3 atomcat:4 atomcat:5 atomcat:6 atomcat:7 atomcat:8 atomcat:9 atomcat:10 atomcat:11 atomcat:12 atomcat:13 atomcat:14 atomcat:15

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes No No No Yes Yes Yes Yes Yes

yap Yes Yes Yes Yes Yes Yes Yes No No Yes Yes Yes Yes Yes Yes



[edit] sub_atom

Prolog subatom:1 subatom:2 subatom:3 subatom:4 subatom:5 subatom:6 subatom:7 subatom:8 subatom:9 subatom:10

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

yap Yes No Yes Yes Yes Yes Yes Yes Yes Yes

Prolog subatom:11 subatom:12 subatom:13 subatom:14 subatom:15 subatom:16 subatom:17 subatom:18 subatom:19 subatom:20

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

yap No Yes Yes No Yes Yes Yes Yes Yes Yes

Prolog subatom:21 subatom:22 subatom:23 subatom:24 subatom:25 subatom:26 subatom:27 subatom:28 subatom:29 subatom:30

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

yap Yes Yes Yes Yes Yes No Yes No No No

Prolog subatom:31 subatom:32 subatom:33 subatom:34 subatom:35 subatom:36 subatom:37 subatom:38

aprolog Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes Yes Yes

gprolog Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes

yap Yes Yes Yes Yes Yes Yes Yes Yes



[edit] atom_chars

Prolog atomchs:1 atomchs:2 atomchs:3 atomchs:4 atomchs:5 atomchs:6 atomchs:7 atomchs:8 atomchs:9 atomchs:10 atomchs:11 atomchs:12 atomchs:13 atomchs:14 atomchs:15

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes No No Yes Yes

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes No No Yes Yes No Yes Yes

yap Yes No No No No No Yes Yes No No Yes Yes No No No



[edit] atom_codes

Prolog atomcds:1 atomcds:2 atomcds:3 atomcds:4 atomcds:5 atomcds:6 atomcds:7 atomcds:8 atomcds:9 atomcds:10 atomcds:11 atomcds:12 atomcds:13 atomcds:14 atomcds:15 atomcds:16

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes Yes Yes Yes No No Yes Yes No Yes No

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes No

yap Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes



[edit] char_code

Prolog charcde:1 charcde:2 charcde:3 charcde:4 charcde:5 charcde:6 charcde:7 charcde:8 charcde:9

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes Yes Yes Yes

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes Yes

yap Yes Yes Yes No Yes Yes Yes No Yes



[edit] number_chars

Prolog numbchs:1 numbchs:2 numbchs:3 numbchs:4 numbchs:5 numbchs:6 numbchs:7 numbchs:8 numbchs:9 numbchs:10

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes No No No No

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes No Yes Yes Yes

yap No No Yes No No No No No No No

Prolog numbchs:11 numbchs:12 numbchs:13 numbchs:14 numbchs:15 numbchs:16 numbchs:17 numbchs:18 numbchs:19 numbchs:20

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes No No Yes Yes No No

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes No No No No No

yap No No Yes Yes Yes No No No No No

Prolog numbchs:21 numbchs:22 numbchs:23 numbchs:24 numbchs:25 numbchs:26 numbchs:27

aprolog Yes Yes Yes Yes Yes Yes Yes

ciao No No No No No No No

gprolog Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes

swipl No Yes Yes Yes Yes Yes Yes

yap No No No No No No No



[edit] number_codes

Prolog numbcds:1 numbcds:2 numbcds:3 numbcds:4 numbcds:5 numbcds:6 numbcds:7 numbcds:8 numbcds:9 numbcds:10

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

yap Yes Yes Yes Yes Yes No Yes Yes Yes Yes

Prolog numbcds:11 numbcds:12 numbcds:13 numbcds:14 numbcds:15 numbcds:16 numbcds:17 numbcds:18 numbcds:19 numbcds:20

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

yap Yes Yes Yes Yes Yes Yes No No No ?

Prolog numbcds:21 numbcds:22

aprolog Yes Yes

ciao Yes Yes

gprolog Yes Yes

sicstus Yes Yes

sicstus4 Yes Yes

swipl Yes Yes

yap No No



[edit] Flags



[edit] Set_prolog_flag

Prolog setpflg:1 setpflg:2 setpflg:3 setpflg:4 setpflg:5 setpflg:6

aprolog Yes Yes Yes Yes Yes Yes

ciao Yes No No No No No

gprolog Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes No No Yes

yap Yes Yes Yes No Yes Yes



[edit] Current_prolog_flag

Prolog curpflg:1 curpflg:2 curpflg:3 curpflg:4 curpflg:5 curpflg:6 curpflg:7 curpflg:8

aprolog Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes Yes Yes

gprolog Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes

yap Yes No Yes No Yes Yes No Yes



[edit] Terminating execution

Prolog halt1:1 halt1:2 halt1:3

aprolog Yes Yes Yes

ciao Yes Yes Yes

gprolog Yes Yes Yes

sicstus Yes Yes Yes

sicstus4 Yes Yes Yes

swipl Yes Yes Yes

yap Yes Yes Yes



[edit] Arithmetic: Where expressions are evaluated

Prolog eval:1 eval:2 eval:3 eval:4 eval:5 eval:6 eval:7 eval:8 eval:9 eval:10

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes No No Yes Yes Yes No No

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

yap Yes Yes Yes Yes No Yes Yes Yes Yes No

Prolog eval:11 eval:12 eval:13 eval:14 eval:15 eval:16 eval:17 eval:18 eval:19 eval:20

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes No No Yes Yes Yes No No

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

yap Yes Yes Yes Yes No Yes Yes Yes Yes No

Prolog eval:21 eval:22 eval:23 eval:24 eval:25 eval:26 eval:27 eval:28 eval:29 eval:30

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes No No No Yes

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

yap Yes Yes Yes Yes Yes Yes Yes No No Yes

Prolog eval:31 eval:32 eval:33 eval:34 eval:35 eval:36 eval:37 eval:38 eval:39 eval:40

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes No No No Yes Yes Yes Yes Yes

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes No Yes Yes Yes Yes Yes Yes Yes Yes

yap Yes No Yes No Yes Yes No No No No

Prolog eval:41 eval:42 eval:43 eval:44 eval:45 eval:46 eval:47 eval:48 eval:49 eval:50

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes No Yes Yes No Yes Yes Yes No No

gprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

yap No Yes No No No Yes Yes Yes Yes No

Prolog eval:51 eval:52 eval:53 eval:54 eval:55 eval:56 eval:57 eval:58 eval:59 eval:60

aprolog Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes No No Yes Yes Yes Yes Yes

gprolog Yes Yes Yes Yes Yes No No No No No

sicstus Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes Yes No Yes

yap Yes Yes Yes Yes No Yes Yes Yes Yes Yes



[edit] Arithmetic: functors allowed in expressions



[edit] pow

Prolog pow:1 pow:2 pow:3 pow:4 pow:5 pow:6 pow:7

aprolog Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes Yes

gprolog Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes

yap Yes Yes Yes Yes No Yes Yes



[edit] sin

Prolog sin:1 sin:2 sin:3 sin:4 sin:5

aprolog Yes Yes Yes Yes Yes

ciao Yes No Yes No Yes

gprolog Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes

yap Yes Yes Yes No Yes



[edit] cos

Prolog cos:1 cos:2 cos:3 cos:4 cos:5

aprolog Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes

gprolog Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes

yap Yes Yes Yes No Yes



[edit] atan

Prolog atan:1 atan:2 atan:3 atan:4 atan:5

aprolog Yes Yes Yes Yes Yes

ciao Yes Yes No Yes No

gprolog Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes

yap Yes Yes Yes Yes No



[edit] exp1

Prolog exp1:1 exp1:2 exp1:3 exp1:4 exp1:5

aprolog Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes

gprolog Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes

yap Yes Yes Yes Yes No



[edit] log

Prolog log:1 log:2 log:3 log:4 log:5 log:6

aprolog Yes Yes Yes Yes Yes Yes

ciao Yes Yes No No No No

gprolog Yes Yes Yes No Yes No

sicstus Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes

yap Yes Yes Yes No No No



[edit] sqrt

Prolog sqrt:1 sqrt:2 sqrt:3 sqrt:4 sqrt:5 sqrt:6

aprolog Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes

gprolog Yes Yes Yes Yes No Yes

sicstus Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes

yap Yes Yes Yes Yes No No



[edit] Bitwise operations



[edit] Right shift

Prolog bit_rsh:1 bit_rsh:2 bit_rsh:3 bit_rsh:4 bit_rsh:5 bit_rsh:6

aprolog Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes No No No

gprolog Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes No

yap Yes Yes Yes Yes No Yes



[edit] Left shift

Prolog bit_lsh:1 bit_lsh:2 bit_lsh:3 bit_lsh:4 bit_lsh:5 bit_lsh:6

aprolog Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes

gprolog Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes

yap Yes Yes Yes Yes No Yes



[edit] Bitwise and

Prolog bit_and:1 bit_and:2 bit_and:3 bit_and:4 bit_and:5 bit_and:6 bit_and:7

aprolog Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes No No No

gprolog Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes No

yap Yes Yes Yes Yes Yes No Yes



[edit] Bitwise or

Prolog bit_or:1 bit_or:2 bit_or:3 bit_or:4 bit_or:5 bit_or:6 bit_or:7

aprolog Yes Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes Yes Yes Yes

gprolog Yes Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes Yes

yap Yes Yes Yes Yes Yes No Yes



[edit] Bitwise negation

Prolog bit_neg:1 bit_neg:2 bit_neg:3 bit_neg:4 bit_neg:5 bit_neg:6

aprolog Yes Yes Yes Yes Yes Yes

ciao Yes Yes Yes Yes No No

gprolog Yes Yes Yes Yes Yes Yes

sicstus Yes Yes Yes Yes Yes Yes

sicstus4 Yes Yes Yes Yes Yes Yes

swipl Yes Yes Yes Yes Yes Yes

yap Yes Yes Yes Yes Yes Yes



[edit] References



1. ^ ISO/IEC 13211: Information technology — Programming languages — Prolog. International Organization for Standardization, Geneva.

2. ^ Péter Szabó and Péter Szeredi (2006). Improving the ISO Prolog standard by analyzing compliance test results. Proceedings of the International Conference on Logic Programming. http://www.inf.bme.hu/~pts/stdprolog/



Retrieved from "http://en.wikipedia.org/wiki/Prolog_standards_compliance"



Categories: All pages needing cleanup | Prolog programming language family | ISO standards | Software comparisons
I dont know
2007-06-06 11:08:52 UTC
I have seen some answers that are impressively long,an achievment to copy and paste it all!but also a pain having to scroll through it all.
maricela
2016-05-18 05:43:34 UTC
I never use wikipedia. I don't trust an encyclopedia anyone can modify.
SAP Savvy
2007-06-06 10:51:58 UTC
There is no limit as such on Wikipedia but the capacity of your computers' clip board would limit you.
MLM
2007-06-06 10:53:19 UTC
Copying entire articles are copyright violations.
2007-06-06 11:40:12 UTC
Who cares and who can tell, anyone for the last few choc ices now
Carling
2007-06-06 10:50:37 UTC
the largest article there is there, click on the file and click on save as and save hey presto you saved it
witeguy22000
2007-06-06 10:48:47 UTC
chuck norris.


This content was originally posted on Y! Answers, a Q&A website that shut down in 2021.
Loading...