06-09-2023
Семантика: | |
---|---|
Тип исполнения: | |
Появился в: |
2005 |
Автор(ы): |
Томас Мертес |
Релиз: |
05_20120401 (1 апреля 2012) |
Типизация данных: | |
Испытал влияние: |
Seed7 — язык программирования общего назначения.
Главной особенностью языка является его расширяемость. Синтаксис языка определён в одной из библиотек и может быть изменён пользователем.
Содержание |
Язык синтаксически подобен Паскалю и Аде. В дополнении к стандартному Паскалю и ранним версиям Ады включает механизмы объектно-ориентированного программирования а также механизмы расширения языка: мощный механизм шаблонов для определения новых синтаксических конструкций (который, подобно Camlp4 (англ.)русск. включает средства позволяющие задавать ассоциативность и приоритет операций) и нечто вроде стандартных функций, позволяющих задавать семантику таких конструкций. Такие функции, выполняемые на этапе компиляции, принимают в качестве параметров переменные, типы и выражения, включаемые в синтаксические конструкции, и выполняют с ними необходимые преобразования. Если определяемая таким образом грамматика допускает двусмысленное толкование, генерируется ошибка компиляции.[1]
Томас Мертес начал разрабатывать этот язык обучаясь в Венском техническом университете[2]. Он стал в 1984 темой его дипломной работы[3], а затем, в 1986 — диссертации[4].
$ include "seed7_05.s7i"; const proc: main is func begin writeln ("hello world"); end func;
Доступен в виде исходных кодов под лицензиями GPL и LGPL или готовых сборок под Windows. В пакет входит интерпретатор (файл hi
) и компилятор (comp
), генерирующий промежуточный код на языке Си.
Это заготовка статьи о компьютерных языках. Вы можете помочь проекту, исправив и дополнив её. |
Seed7.