Меня зовут Самир, мне 16 и я хотел бы поделиться с вами одним из моих текущих проектов: Veo ( https://github.com/SamirShef/veolang ). Veo это системный язык программирования. Я хочу использовать его для написания своих программ в будущем. А ещё я разрабатываю его потому что мне интересны комплияторы и потому что мне нечего делать.

Я больше года занимаюсь компиляторострением. Не могу сказать, что я очень хорош, я вообще не могу сказать что я хорош, потому что боюсь сказать больше, чем есть на самом деле, но я получил довольно много опыта. За этот год я разработал около 15 языков программирования и Veo самый лучший из них, потому что он единственный, кто дошел до фазы self-hosting.

Я уже переписываю компилятор на самого себя и знаете что? Уже получил первый бинарь (глобальные переменные и не более). Это очень тяжело, потому что тут нет коллекций на базе generic'ов - все коллекции полиморфны. Но как же это круто: я за 2 месяца написал на C++ первую версию компилятора (stage0), и этот компилятор смог скомпилировать вторую версию (stage1), написанную за две недели на самом Veo, а stage1 смог скомпилировать тестовый код на самом Veo. У меня очень много планов на этот язык и я очень хочу их достичь.

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

Этот проект не что-то революционное, или типа того. То, что я им делюсь с вами, значит, что я просто хочу небольшого признания и критики (объективной и конструктивной). Примеры кода на Veo есть в его репозитории. Пока что показывать код не буду. Сначала хочу посмотреть, какая под этой статьей будет реакция. Спасибо, что дочитали!

Комментарии (44)


  1. LimTroev
    20.07.2026 05:48

    Это хорошее начинание, пригодится в жизни в дальнейшем 100%. Развивай тему. Писать компилятор в 16 лет - это действительно круто.


    1. SamirShef Автор
      20.07.2026 05:48

      Спасибо! Я действительно заметил в себе, что очень много узнал и в компиляторах, и в обычном проектировании софта, и в DSA


  1. pewpew
    20.07.2026 05:48

    Меня в 16 лет хватало сил сначала на свой GUI в DOS, а потом писал свой .COM и .EXE упаковщики на смеси паскаля и ассемблера. Прекрасно понимаю, как это увлекает, когда узнаёшь что-то новое, ставишь себе цели и видишь реальный результат.
    Это сейчас у вас ещё время находится свободное. Пользуйтесь моментом. Удачи в начинаниях!


    1. SamirShef Автор
      20.07.2026 05:48

      Спасибо большое, отличные были проекты!


    1. Luis2
      20.07.2026 05:48

      Пока нет ипотеки и семьи, надо вкалывать в самообразование. Потом это окупится сторицей


      1. alliumnsk
        20.07.2026 05:48

        Я писал упаковщики и графику на смеси Паскаля и ассемблера тоже в таком возрасте, а сейчас вижу без работы. Не пригодилось!


        1. dagen
          20.07.2026 05:48

          Есть подозрения, что практика в 16 лет не является минимально необходимым условием для того, чтобы котироваться на рынке труда.

          Я тоже в 15-16 лет писал графику на смеси ассемблера и Паскаля. А сейчас, спустя две дюжины лет, я фронтендер (ts+rust) с хорошим багажом экспертизы, которого у меня совершенно точно не было в 16 лет.

          Автору статьи: это хорошее начинание, продолжайте. Но надо помнить, что самообучение в школе - это не исключение, много увлечённых людей так делают, поэтому:

          А здесь, знаешь ли, приходится бежать со всех ног, чтобы только остаться на том же месте! Если же хочешь попасть в другое место, тогда нужно бежать по меньшей мере вдвое быстрее!

          Это Льюис Керролл, "Алиса в Зазеркалье".


  1. vadimr
    20.07.2026 05:48

    Хорошее упражнение для головы, продолжайте. В реальности, конечно, компиляторы пишутся по-другому – через теорию формальных грамматик – но чтобы почувствовать, зачем это нужно, вам нужно сначала реализовать свой способ и понять его проблемы. Так что, конечно, будет полезно довести дело до рабочей кодогенерации.


    1. Luis2
      20.07.2026 05:48

      Написать свой парсер рекурсивным спуском полезнее, чем сразу брать готовый yacc/bison. Понимание AST приходит через боль)


      1. vadimr
        20.07.2026 05:48

        Полностью согласен.


  1. ShashkovS
    20.07.2026 05:48

    Кажется, синтаксис примерно полностью взят как подмножество rust’а.

    Можно пока забить на развитие самого языка и потренировать ci&cd (сборка всех бинарей и публикацию релизов в гитхаб), а также автогенерацию документации языка.


    1. SamirShef Автор
      20.07.2026 05:48

      Я действительно опирался на Rust, причем хочу взять от него ещё и систему владения.

      Думаю, вы правы насчёт сборок, но, кажется, доки пока рано делать, потому что и механики, и синтаксис ещё плавают


      1. bear11
        20.07.2026 05:48

        Ой, а попробуйте взять rust и присобачить к нему велеречивость Ады и Паскаля (убрать все лишние ! и ? и скобочки и заменить их где можно на осмысленные слова). Вам спасибо скажут те, кого напрягает помнить, что означает какой-то хитрый знак.


  1. Newpson
    20.07.2026 05:48

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

    Ещё чем-нибудь занимаетесь помимо программирования? В плане увлечений. Может нужно отвлечься?


    1. SamirShef Автор
      20.07.2026 05:48

      Да вот ничем. Я 4 года занимаюсь программированием, но больше увлечений нет. Отвлечься действительно не помешает


      1. thereisnocolor
        20.07.2026 05:48

        Сходи в кино с красивой девочкой, получи заряд эндорфинов. Это очень мотивирует к свершениям


        1. EmmGold
          20.07.2026 05:48

          Ага, но только в кино. Девочки такие существа, что забирают всё время и ресурсы.


        1. VladimirLadynev
          20.07.2026 05:48

          Человек 4 года занимается программированием и, Вы думаете, у него хватит опыта именно с красивой сходить? Пусть хоть с какой сходит для начала.


          1. SamirShef Автор
            20.07.2026 05:48

            И то верно


      1. eao197
        20.07.2026 05:48

        но больше увлечений нет.

        Если нет никакой физкультуры, то имеет смысл добавить какой-либо вид ОФП. Это поможет и повысить работоспособность сейчас, и сохранит эту самую работоспособность на долгие годы вперед. Лет через 30 организм только спасибо скажет за привитые в молодости привычки к физическим упражнениям. А эти самые 30 лет, увы, пролетят очень и очень быстро.


        1. SamirShef Автор
          20.07.2026 05:48

          Физкультура есть, не переживайте, у меня довольно хорошая форма)


          1. eao197
            20.07.2026 05:48

            Мне-то чего переживать? ;)

            Это вам еще на протяжении десятков лет за компьютером по много часов просиживать.


        1. Luis2
          20.07.2026 05:48

          База. Сидячая работа убивает спину быстрее, чем кажется


  1. timka05
    20.07.2026 05:48

    Очень много "я". Но для 16 лет, наверное, это нормально )