Icon/Struktura programu

Na program w języku Icon składają się deklaracje. Deklaracje obejmują:

  • deklaracje zmiennych globalnych
  • deklaracje rekordów
  • deklaracje procedur zewnętrznych
  • deklaracje procedur.

Oprócz deklaracji stanowiących program, w kodzie źródłowym mogą występować:

  • dyrektywy preprocesora (w pierwotnych implementacjach tego języka preprocesor nie występował)
  • komentarze.

Deklaracje mają postać:

  • deklaracja zmiennych globalnych ma postać:
 global lista_identyfikatorów
  • deklaracja rekordu ma postać:
 record identyfikator(lista_pól)
  • deklaracja procedur zewnętrznych ma postać:
 external lista_identyfikatorów
  • deklaracja procedury ma postać:
 procedure identyfikator(lista_parametrów)
   deklaracje_lokalne
   treść_procedury
 end
  • dyrektywa preprocesora ma postać
 $nazwa_dyrektywy lista_parametrów
  • komentarz ma postać
 # treść komentarza.

Każdy program musi zawierać deklarację procedury o nazwie main. Od tej procedury rozpoczyna się wykonywanie programu. Procedury nie mogą być zagnieżdżone, tzn. w treści procedury nie można deklarować procedur lokalnych (podobnie jak w języku C, a w przeciwieństwie do języka Pascal).