Type tests are semi-deterministic predicates that succeed if the
argument satisfies the requested type. Type-test predicates have no
error condition and do not instantiate their argument. See also library
library(error).
"hello" creates a list of character
codes. We illustrate the issues in the example queries below.
?- write("hello").
[104, 101, 108, 108, 111]
true.
?- string("hello").
false.
?- is_list("hello").
true.