The GLUT implementation should have a well-defined name space for both exported symbols and visible, but not purposefully exported symbols. All exported functions are prefixed by glut. All exported macro definitions are prefixed by GLUT_. No data symbols are exported. All internal symbols that might be user-visible but not intended to be exported should be prefixed by __glut. Users of the GLUT API should not use any __glut prefixed symbols.