Inter-Client Communication Conventions Manual
From Wikipedia, the free encyclopedia
In computing, the Inter-Client Communication Conventions Manual (almost universally referred to by its initials, ICCCM) is a standard for X Window System clients to interoperate on the same server. It was put together by the MIT X Consortium over 1988. Version 1.0 was released in July 1989 and version 2.0 in early 1994.
X deliberately specifies "mechanism, not policy." As such, a specification was needed for client interoperation. The ICCCM specifies cut and paste buffers, window manager interaction, session management, how to manipulate shared resources and how to manage device colours.
The ICCCM is notorious for being ambiguous and difficult to correctly implement [1]; chapter 7 of the UNIX-Haters Handbook, "The X-Windows[sic] Disaster", disparages ICCCM as "Ice Cube: The Lethal Weapon":
In summary, ICCCM is a technological disaster: a toxic waste dump of broken protocols, backward compatibility nightmares, complex nonsolutions to obsolete nonproblems, a twisted mass of scabs and scar tissue intended to cover up the moral and intellectual depravity of the industry’s standard naked emperor.
Furthermore, some parts are obsolete or no longer practical to implement [2]. Most X programmers work to the specifications of their widget toolkit or desktop environment rather than directly to the ICCCM. However, efforts to try to update and clarify the ICCCM for current needs have resulted in the Extended Window Manager Hints [3] (EWMH), which has gained fairly broad acceptance (and which continues to be extended as the need arises).