Many type checking functions are built in, each returning a boolean value:
integer(X), float(X), number(X),
var(X), nonvar(X)
is_list(X), atom(X), atomic(X), callable(X), compound(X)