Назначение
Язык программирования Тривиль разработан в рамках работы на семейством языков программирования Языки выходного дня (ЯВД) проекта Интенсивное программирование.
Тривиль является предварительным языком семейства ЯВД, предназначенным для реализации компиляторов и экосистемы следующих языков семейства. В рамках классификации языков, принятом в проекте Интенсивное программирования, это язык L2.
Основными требованиями к языку были поставлены:
- язык должен быть минимально достаточным, то есть в него должны быть включены только те типы и конструкции, которые необходимы для реализации компиляторов
- язык должен быть современным с точки зрения набора конструкций
- язык должен поддерживать надежное программирование (автоматическое управление памятью, отсутствие неопределенного поведение, безопасность указателей, минимизация неявных конструкций)
- язык должен обеспечивать легкость чтения и понимания (readability) и легкость разработки
- как следствие: язык должен быть русскоязычным. Лексика и синтаксис языка должны минимизировать переключение на латиницу и обратно в процессе разработки программ
Название языка происходит от слова тривиальный, что означает, что при разработке языка практически везде использовались решения, проверенные в других современных языках программирования, в первую очередь донорами являются Go, Swift, Kotlin и Oberon.
В итоге разработки, несмотря на первоочередную направленность на разработку компиляторов, Тривиль является языком программирования общего назначения, пригодным для решения широкого круга задач.
Получившийся язык (и экосистема) обладает существенными достоинствами для использования в качестве полигона для обучения студентов разработке компиляторов, библиотек, алгоритмов оптимизации и так далее, в первую очередь это:
- Простота языка
- Современный вид и набор конструкций языка
- Простота компилятора
- Открытая лицензия