Назначение

Язык программирования Тривиль разработан в рамках работы на семейством языков программирования Языки выходного дня (ЯВД) проекта Интенсивное программирование.

Тривиль является предварительным языком семейства ЯВД, предназначенным для реализации компиляторов и экосистемы следующих языков семейства. В рамках классификации языков, принятом в проекте Интенсивное программирования, это язык L2.

Основными требованиями к языку были поставлены:

  • язык должен быть минимально достаточным, то есть в него должны быть включены только те типы и конструкции, которые необходимы для реализации компиляторов
  • язык должен быть современным с точки зрения набора конструкций
  • язык должен поддерживать надежное программирование (автоматическое управление памятью, отсутствие неопределенного поведение, безопасность указателей, минимизация неявных конструкций)
  • язык должен обеспечивать легкость чтения и понимания (readability) и легкость разработки
  • как следствие: язык должен быть русскоязычным. Лексика и синтаксис языка должны минимизировать переключение на латиницу и обратно в процессе разработки программ

Название языка происходит от слова тривиальный, что означает, что при разработке языка практически везде использовались решения, проверенные в других современных языках программирования, в первую очередь донорами являются Go, Swift, Kotlin и Oberon.

В итоге разработки, несмотря на первоочередную направленность на разработку компиляторов, Тривиль является языком программирования общего назначения, пригодным для решения широкого круга задач.

Получившийся язык (и экосистема) обладает существенными достоинствами для использования в качестве полигона для обучения студентов разработке компиляторов, библиотек, алгоритмов оптимизации и так далее, в первую очередь это:

  • Простота языка
  • Современный вид и набор конструкций языка
  • Простота компилятора
  • Открытая лицензия