Название для языка программирования было выбрано задолго до появления графических интерфейсов и вероятнее всего возникло в связи с борьбой с предрассудками [iconoclasm], так как сам по себе язык достаточно отклонялся от общих тенденций развития языков.
Icon - высокоуровневый язык общего назначения по синтаксису напоминающий C и Pascal. Высокоуровневый означает, что язык предоставляет много инструментов для автоматической обработки информации, которую необходимо выполнять в ручную на языках более низкого уровня, например, C/C++. Данный подход позволяет делать больше, быстрей и легче. Все это делает Icon идеальным языком программирования для: Быстрого программирования. Если Вам необходимо срочно написать программу, то Icon лучший выбор, чем язык более низкого уровня Тестирование идей - Если у Вас есть какая-либо идея, то ее разумнее реализовать для испытания на работоспособность на Icon, чем на языке более низкого уровня Написание различных примочек - зачастую существует необходимость реализовать простенькую нетребовательную задачу, которую будет намного легче и быстрее реализовать на Icon Обработки текста - строки и таблицы в Icon реализованы таким образом, что обработка текстовой информации значительно упрощается Программирование графики - благодаря расширенной графической библиотеке в 9 версии Icon создавать графический интерфейс и работать с графикой становится намного проще
Элементы синтаксиса:Комментарий до конца строки # Присваивание значения переменной := Объявление переменной variable Объявление переменной с присваиванием значения variable := value Блок { ... } Равенство = Неравенство ~= Тождественное равенство == или === Тождественное неравенство ~== или ~=== Сравнение < > <= >= << >> <<= >>= Определение функции procedure f(p1, p2, ...) ... end Вызов функции f(a, b, ...) Вызов функции без параметров f() Последовательность ; Если - то if condition then ... Если - то - иначе if condition then ... else ... Цикл с предусловием while condition do ... Цикл с постусловием until condition do ... Цикл for - next для диапазона целых чисел с инкрементом на 1 every i := 1 to 10 do ...