tests whether the type of the argument is atom
atom(Term)
atom(Term) (i)
void(Term) (i) Term to be tested.
This is a standard prolog built-in. Atom() succeeds if its argument is unbound or currently bound to an atom.
NOTE: This implementation differs to that of Clocksin/Mellish for their atom() predicate would fail if the Term is unbound. To get the usual behaviour, you have to use a bound (Term),atom(Term) combination!
read(X), ( atom(X), write("Atom"),nl ; integer(X), write("Integer"),nl ).
No runtime errors.
prolog-process, client-server, object