Az Icon egy "nagyon" magas szintű, általános célú programozási nyelv, amely széles körű string- (szöveg) és adatstruktúra-kezelési lehetõségekkel rendelkezik. Ez egy imperatív, procedurális nyelv, a szintaxisa emlékeztet a C-re és a Pascalra.
Az Icon újfajta kifejezés-kiértékelõ mechanizmussal rendelkezik, amely magába foglalja a cél-orientált kiértékelést, és a visszalépéses keresést a szokásos vezérlõ szerkezetekkel. Továbbá nagyon fejlett string-kezelési algoritmusokat tartalmaz, így szövegfeldolgozás sokkal egyszerűbb benne.
Az Icon erõsen -de nem statikusan- típusos nyelv, automatikus típuskonverzióval rendelkezik. Például ha egy integer típusú változót egy string műveletben alkalmazunk, akkor az automatikusan stringgé konvertálódik.
A memóriaterület lefoglalása a változók számára szintén automatikus, és a stringek és adatstruktúrák méretének csak a rendelkezésre álló memória szab határt.
Ajánlás szerint mikor használjuk az Icont:
Ami hátrány lehet az Iconban:
A programnyelv nevét (Icon) jóval a grafikus felületek népszerűvé válása elõtt választották ki, így nem a grafikus ikonra után, hanem sokkal inkább az iconoclasm (képromboló, tekintélyromboló) szóra, mivel felépítése nagy mértékben eltér a programnyelvek tervezésében általánosan elfogadott elvektõl.