Az Idol az Icon nyelv egy előprocesszora - objektumorientált kiterjesztése és környezete -, amelyet úgyszintén az Arizónai Egyetemen
(The University of Arizona, http://www.cs.arizona.edu) fejlesztettek ki.
Ebben a nyelvleírásban csak objekturmorientált eszközök leírása szerepel. Egyéb nyelvi eszközök az Icon nyelv részét képezik.
Az Idol nyelv az adatok és az azokat manipuláló függvények összekapcsolását implementálja, ezáltal strukturáltabb programok írását segíti elő. Az Icon programozó számára az Idol valójában egy kiegészítő típust biztosít, amelyben a mezők közvetlenül nem hozzáférhetőek, csak a típussal összekapcsolt műveleteken keresztül.