Когда идет речь о разных способах задания языка, выделяются как самые реальные второй, а также третий способ: задание языка с использованием распознавателей и генераторов. В качестве генераторов могут в общем случае использоваться грамматики, но для более узкого сектора языков – регулярные выражения.
Как правило, в качестве распознавателей применяются автоматы разных типов.
Можно сформулировать также основной перечень требований, выставленных для работы с такими языками (рисунок 2).
Рисунок 2 – Требования к языкам программирования
Некоторые разработчики умеют использовать только одним-двумя языками программирования, иные – несколькими. Профессиональные разработчики применяют в своей работе иногда более 15 различных языков программирования.
1.2. Классификация языков программирования
Существуют различные классификации языков программирования, которые используются в разработке программ. По самой распространенной классификации все известные языки делятся на следующие категории (рисунок 3):[12]