[det]digits(?Chars)//
[det]digit(?Char)//
[det]integer(?Integer)//
Number processing. The predicate digits//1
matches a possibly empty set of digits, digit//1
processes a single digit and integer processes an optional sign followed
by a non-empty sequence of digits into an integer.