In Glossary§

See primary documentation in context for Type smiley

A type smiley is a suffix a type may have that indicates the definiteness of values that can typecheck against it. This may be :D to indicate that only defined values can typecheck (i.e. instances), :U to indicate that only undefined values can typecheck (i.e. type objects), or :_ to indicate that both defined and undefined values can typecheck. These resemble emoticons, thus the name.