Comments 7
Класс, всегда мечтал написать свой язык программирования))
Возможно, если серия будет интересна, то она получит продолжение. Всем успехов в мире разработки языков программирования коммерческих и для души.
Очень актуальная серия для тех, что сам хочет или уже разрабатывает собственный язык программирования (например, как я :-) ). И хотя я с некоторыми вещами не согласен или считают их пережитком прошлого, но сам материал очень полезен. Очень надеюсь, что продолжение все же будет, так как задумка мало того, что интересна само по себе, но еще и полезна в плане примеров и дополнительного опыта.
Спасибо. Было бы интересно узнать, с чем именно вы не согласны, всегда интересно услышать мнения со стороны)
Мое не согласие относится скорее не к реализации, а только к семантике языка. Он у вас практически повторяет С++ со всеми его наворотами и сопутствующими проблемами.
Мне кажется, что создавая новый язык можно было бы исправить некоторые из них, которые С++ просто вынужден поддерживать для обратной совместимости. Ведь в новом языке обратная совместимость не требуется.
Но так как ваша цель больше показать пример реализации языка с использованием LLVM, то мое замечание не принципиальное, так как свою задачу ваши статьи выполняют хорошо. А для целей обучения, даже правильно делать семантику похожую на С++, чтобы можно было с чем сравнивать.
Да, все верно, цель была именно показать как можно сделать что-то большее, чем язык с функциями и одним типом данных. Вполне возможно, что кому-то это сэкономит время, т.к. многое описано в теории, а на практике приходится все искать в исходных кодах различных проектов или анализировать то, что генерирует тот или иной компилятор.
А дальше каждый уже решает сам, что он хочет получить от своего языка программирования. И какой синтаксис, и какие парадигмы он будет иметь, т.к. у каждого свои предпочтения и потребности.
Спасибо за очень интересный цикл статей!
Создаем свой собственный язык программирования с использованием LLVM. Часть 5: Поддержка классов и перегрузки функций