I23: A. S. Medvednikov | The V Programming Language - simple, fast, safe, compiled, Open Source

Поделиться
HTML-код
  • Опубликовано: 5 янв 2025

Комментарии • 118

  • @yegor256
    @yegor256  7 месяцев назад +5

    Подпишись, будь среди лучших!
    t.me/yegor256news

  • @ТимурГарифулин-ш5з
    @ТимурГарифулин-ш5з 7 месяцев назад +10

    Очень интересное интервью, однозначно лайк!

  • @TemLetom
    @TemLetom 7 месяцев назад +12

    Очень крутое интервью. Спасибо! Simplicity is the ultimate sophistication.

  • @grosspavel
    @grosspavel 7 месяцев назад +6

    Супер интервью. Спасибо.
    Идеи и путь развития языка очень правильные. Уже пробую 👍

  • @plasticsurgeon5062
    @plasticsurgeon5062 7 месяцев назад +8

    Nice interview. Keep up the work, Alex!

  • @diyorbek5664
    @diyorbek5664 7 месяцев назад +7

    Интервью получилось крутым, спасибо!

  • @sergei_vasilenko
    @sergei_vasilenko 6 месяцев назад +2

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

  • @Belton1111
    @Belton1111 7 месяцев назад +7

    Спасибо. Отличное интервью, крутой гость.

  • @cyberbiosecurity
    @cyberbiosecurity 7 месяцев назад +4

    спасибо, ОЧЕНЬ интересная беседа.

  • @vladimirmigalkin9464
    @vladimirmigalkin9464 7 месяцев назад +5

    Как обыно интересно. Спасибо Егор.

  • @vremennonado
    @vremennonado 7 месяцев назад +19

    Жалко, что Александр так и не ответил толком, как он учился (в его случае самообучался), что именно делал на работе, как вообще докатился до жизни такой.
    А в целом супер-гость, конечно, и отличное интервью.
    Егору большой респект, помимо всего прочего, за то, что всегда внимательно слушает ответы, не останавливает и не перебивает, не пытается умничать типа "да я сам в теме, у меня вон свой язык тоже есть, я тоже крутой". Тактично, корректно , отличные вопросы. Резкий контраст в этом плане на фоне, например, АйТиБороды - пару интервью у него смотрел, тяжело далось.

    • @VLang
      @VLang 7 месяцев назад +11

      Первый ЯП написал в 13 лет по книге земляка Сергея Свердлова "Языки программирования и методы трансляции". В 2012 устроился вебдевом, в 2014 написал архитектуру стартапа с нуля на Go, тогда ещё новом и малоизвестном языке. Язык понравился своей простотой, но многого не хватало. Поэтому в 2018 написал свой язык V, в 2019 переписал его на самом себе и заопенсорсил.

    • @vremennonado
      @vremennonado 7 месяцев назад +4

      @@VLang полистал книгу, фактически это добротный ВУЗовский учебник. В13 лет такое осилить и что-то своё работающее сделать - это, конечно, мощно) Я, по-моему, ещё в трансформеров в этом возрасте играл

    • @VLang
      @VLang 7 месяцев назад +2

      @@vremennonado да, много вузовской математики я не понимал тогда, но код был прост. Надо будет выложить на гитхаб мой ЯП, который я написал по этой книге :) Книга хорошая, жаль не было AST. Но в те времена писали однопроходные компиляторы, думаю из-за этого.

  • @nick322
    @nick322 7 месяцев назад +4

    Я под впечатлением. Спасибо!

  • @t0digital
    @t0digital 7 месяцев назад +5

    Спасибо за интересное интервью! Смотрел со включенными субтитрами (не всегда разбирал слова Александра) и обратил внимание на то, какие качественные субтитры, со знаками препинания и правильными словами. Где их готовили? Ютуб пока так не умеет.

    • @VLang
      @VLang 7 месяцев назад +2

      На последующих интервью буду с более хорошими микро/камерой и буду более внятно говорить :)

    • @yegor256
      @yegor256  7 месяцев назад +2

      это мы ручками, с вниманием к каждому слову!

    • @t0digital
      @t0digital 7 месяцев назад +2

      @@yegor256 воу! Огромное уважение вам. Пожалуй, тоже стоит так делать.

    • @t0digital
      @t0digital 7 месяцев назад +2

      @@VLang если нужна консультация по этому вопросу - с удовольствием!

  • @apollon4eg
    @apollon4eg 6 месяцев назад +1

    Спасибо, было интересно, нам нужно больше интервью 😀

  • @Vitalik1223
    @Vitalik1223 7 месяцев назад +1

    Прекрасное интервью, легко прям прошло, спасибо!

  • @vacsa
    @vacsa 7 месяцев назад +26

    Simple but not easy! Отличный гость, без фона, понтов, бороды, смузи и прочей шелухи современного "набивания репутации и раздувания щек"- пришёл, увидел, победил!

  • @albertabdullin7635
    @albertabdullin7635 7 месяцев назад +12

    крутой парень. Видно, что в голове порядок. Егор, когда кто-то будет доказывать, что он сеньор, скинь ему ссылку на это интервью)

    • @Anton-nq8po
      @Anton-nq8po 7 месяцев назад

      По критериям Егора минимум мидл

  • @OCTAGRAM
    @OCTAGRAM 7 месяцев назад

    16:23 «Очень сильно настраиваемый» Garbage Collector в Java как переключить в режим подсчёта ссылок? В Objective-C 2.0 такое переключение было доступно.

    • @VLang
      @VLang 7 месяцев назад

      Ну в яве он всё-таки tracing, а не rc. Совсем другой тип. В objc как раз используется rc, tracing нет. По моему опыту tracing в большинстве ситуаций лучше, но не всегда. Было бы достаточно просто добавить шестой способ mem management в V (rc) для тех, кому он нужен.

    • @OCTAGRAM
      @OCTAGRAM 7 месяцев назад

      @@VLang ARC суть один из способов сделать GC. Тот, кто запускает Яву, лучше знает, какой он хочет GC, и один из вариантов должен быть ARC. Используя Javolution, можно получить ARC, ну а почему-то в generic JVM нет.
      В Objective-C не было TGC, потом его добавили, потом выпилили.

    • @OCTAGRAM
      @OCTAGRAM 6 месяцев назад

      @@VLang И я ещё подумал. А это шестой ли способ? Или это всё же разновидность gc. Может быть, не считать его отдельным способом, может быть, не разделять так уж сильно. Использовать одну и ту же пометку, но авторы могли бы оставлять предупреждения, что в их коде есть барон Мюнхгаузен, вытаскивающий себя за волосы из болота, и для утопления барона нужна именно трассирующая разновидность сборщика мусора. И если нигде в библиотеках нет баронов, то библиотеки можно собирать и так, и этак.
      С другой стороны, есть персистентные структуры данных с копированием при записи, с копированием пути, и у них подсчёт ссылок может давать преимущества настолько мощные, что надо считать ссылки даже при управлении памятью трассирующим сборщиком мусора. Но сразу вопрос, а если мы точно знаем момент потери актуальности, то как можно устоять от соблазна тут же и убить. Если трассирующая сборка мусора без компактификации, то хочется сразу и убить.

    • @VLang
      @VLang 6 месяцев назад

      @@OCTAGRAM tracing gc & rc слишком разные, чтобы объединять их. Но это моё мнение. Сейчас до сих пор идут обсуждения на эту тему.

    • @OCTAGRAM
      @OCTAGRAM 6 месяцев назад

      @@VLang В тот период, когда в Objective-C 2.0 было возможно и то, и другое, они не разделялись синтаксически. Были только в Mach-O флаги выбора режима. В Modula-2+ были переходы между ARC и TGC. В RemObjects Oxygene на многих платформах, к сожалению, применяют TGC. На JVM и CLI, конечно, понятно, что это выбор против воли программиста, но в RemObjects Oxygene и натив, к сожалению, так сделали. За исключением макос. На макосе бэкенд Noughat использует родной для макоса подсчёт ссылок. Там TGC нет. А транслируется с одних и тех же исходников.
      Можно ещё Cyclone вспомнить. Там ARC и TGC вводились как специальные регионы. Были регионы с ограниченным временем жизни, а были два глобальных региона. В Cyclone регионы параметризуют struct, а внутри struct регионы-параметры специализируют те или иные указатели. Через разную параметризацию можно переключать способ обработки.

  • @olekollo7875
    @olekollo7875 6 месяцев назад +1

    13:58 хотелось бы чтобы в VPM был поиск по ключевым словам и как-то упорядочить название пакетов а то в названиях как-то беда кто во что гаразд...

  • @Pablo_Str
    @Pablo_Str 7 месяцев назад +3

    Очень позитивный и интересный собеседник! Жаль звук не очень.

  • @alexjohnson5893
    @alexjohnson5893 7 месяцев назад +10

    Автору языка V большое спасибо. Желаю, чтобы язык реально "выстрельнул"!

    • @yegor256
      @yegor256  7 месяцев назад

      мне кажется, он уже выстрельнул)

    • @neophron197
      @neophron197 7 месяцев назад

      @@yegor256 щас время такое, нужно что-то русское)

  • @awakeyprime5196
    @awakeyprime5196 6 месяцев назад +1

    95% того что говорит гость не понятно, но через экран передается то насколько он хорошо в этом разбирается, буквально дышит этим, и это завораживает :)

  • @victorshagin5680
    @victorshagin5680 6 месяцев назад

    Здравствуйте Александр что думаете о статье "V Language Review (2022)"

    • @alexandermedvednikov2558
      @alexandermedvednikov2558 6 месяцев назад

      Старые баги в тайп чекере, которые давно были пофикшены. Можете проверить на online playground.

  • @АлмазИлалетдинов-м3х
    @АлмазИлалетдинов-м3х 7 месяцев назад +2

    Ждем выпуск про eolang)

    • @yegor256
      @yegor256  7 месяцев назад +1

      надо до V еще очень далеко) но мы стараемся!

  • @AT-gg2xp
    @AT-gg2xp 7 месяцев назад +1

    Сорян, если комментарий продублируется, походу гугл его дропает из-за ссылки.
    Спасибо Егору и гостю за интервью! Круто было бы вторую часть увидеть. Хорошо бы Эндрю Келли позвать на интервью.
    Есть ли статьи про "кишки" V? Интересно было бы про трансляцию.
    Есть мнение, что ни в одном из ЯП работа с ошибками не сделана прям идеально (ссылку попробую ниже оставить). Были ли амбиции задизайнить что-то идеальное?

  • @Ddiidev
    @Ddiidev 7 месяцев назад +2

    🇧🇷 Eu trabalho com C# a 6 anos, porém a dois anos que meu github está cheio de código V, estou amando a simplicidade que se consegue iniciar um projeto e ainda manter o sistema saudável.

    • @VLang
      @VLang 7 месяцев назад +1

      Glad you like the language!

    • @manOfPlanetEarth
      @manOfPlanetEarth 7 месяцев назад

      @@VLang
      я что-то так и не понял, как язык-то появился. ты написал транслятор с Go на С, а V как появился???🤔

    • @manOfPlanetEarth
      @manOfPlanetEarth 7 месяцев назад

      @@VLang
      2:30 "добавлю многопоточности"
      а куда ее добавлять? в транслятор? бессмыслица какая-то.
      и я в принципе не понимаю, как можно куда-то просто добавить многопоточности: например, в джаве чтобы понастоящему разобраться с многопоточностью, надо жизнь потратить - и это как пользователь☝🏼 а ведь кто-то эту систему разработал!

    • @manOfPlanetEarth
      @manOfPlanetEarth 7 месяцев назад

      @@VLang
      ты столько языков перечислил за выпуск - ты их все знаешь????
      вообще твой бэкграунд в выпуске совершенно не раскрыт: чему и сколько времени ты самообучался и чем занимался на работе?
      такое ощущение, что ты просто с детства изучал разные языки как они работают на самом деле и сравнивал их.
      сколько тебе лет?🤔

    • @manOfPlanetEarth
      @manOfPlanetEarth 7 месяцев назад

      @@VLang
      27:00 а куда движутся эти три ОС?

  • @VLADrusLV55
    @VLADrusLV55 7 месяцев назад +8

    Вообще интересные направления в плане новых, простых языков, V, Nim, Zig (это то что только я знаю), но я так понимаю для них самое главное не уйти в бесконечное добавление фич и оставаться лаконичным. Может действительно нам больше нужен V lang 1.0, а не Python 4.0 с кучей кода разного качества и ужасным легаси. А на V lang переписать только самые нужные программы.

    • @VLang
      @VLang 7 месяцев назад +2

      Языков нового поколения (такой компилируемый Питон) типа Nim и V действительно много, но только V фокусируется на простоте. Из всех языков я бы ещё выделил Go как простой. Все остальные так любят добавлять всё новые и новые фичи, и многие до сих пор имеют ООП... :)

    • @DekaSoft
      @DekaSoft 7 месяцев назад

      ​@@VLangа что такого плохого в ООП?

    • @artyomby4125
      @artyomby4125 7 месяцев назад

      @@VLang я б сказал ооп имеет их 😆 жаль только, что из всех один go пока ворвался в продакшены серьезные и то не без огромной помощи Гугла в пропихивании как только можно

    • @VLang
      @VLang 7 месяцев назад

      @@DekaSoft он элементарно не нужен. Все задачи достигаются без него без проблем. Лишь усложняет код значительно. У Егора на канале есть видео про это.

    • @DekaSoft
      @DekaSoft 7 месяцев назад +1

      @@VLang то, что без него можно обойтись - бесспорно. Как, на мой взгляд, и то, что во многих задачах ООП - это то, что доктор прописал. Видео Егора про ООП специально нашел и посмотрел - вообще не впечатлило. Такое ощущение, что он не до конца понимает суть ООП, при всем уважении.

  • @pant9r
    @pant9r 7 месяцев назад +2

    Читаешь issues на GitHub - и все как говорил Егор про хейтеров в opensource. Интересно было бы послушать как Александр будучи единоличным создателем выдерживает этот напор от критиков. Про volt еще интересно подробнее услышать, также про то, почему название языка звучит как Vi, а Volt как Vault 😅

    • @MatthewJankins
      @MatthewJankins 5 месяцев назад

      Критика частично оправдана как я понимаю из-за того что было несколько обещаний в начале которые не были сдержаны насчет того же GC например. Хотя обороты хейта не оправданы в целом конечно

  • @olekollo7875
    @olekollo7875 6 месяцев назад

    когда планируется стабильная версия?

  • @vadima8602
    @vadima8602 6 месяцев назад

    Конечно было бы еще интересно пораспрашивать про конкретные фичи, например channel как они реализованы? Как только в язык добовляется concurrency, многое может поменяться. Ведь хотят делать эффективный язык, значит нужно хорошо использовать ресурсы всех ядер, однопоточные программы писать можно на любом языке достаточно быстрые. Посмотрим 🧐

  • @crutchmaster9637
    @crutchmaster9637 6 месяцев назад

    Интересный язык. Кастомные атрибуты только как делать я не понял из доки.

    • @VLang
      @VLang 6 месяцев назад +1

      пока никак, сделаем это скоро

  • @ВладиславГришин-ш7ш
    @ВладиславГришин-ш7ш 7 месяцев назад

    ЯП nelua тоже в Си код свой переделывает

  • @ИванБабенко-щ9т
    @ИванБабенко-щ9т 7 месяцев назад +8

    Это брат папича?)

    • @VLang
      @VLang 7 месяцев назад +3

      roflanZdarova

  • @nucluster
    @nucluster 7 месяцев назад +2

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

  • @ВладиславГришин-ш7ш
    @ВладиславГришин-ш7ш 7 месяцев назад

    сокеты и libuv в нем есть или что то своё?

    • @VLang
      @VLang 7 месяцев назад

      сокеты есть, включая websockets

    • @ВладиславГришин-ш7ш
      @ВладиславГришин-ш7ш 7 месяцев назад

      @@VLang спасибо за ответ. а libuv или подобная (event loop, epoll) либа ? ffi ?
      и еще вопрос - допустим нужно хранить миллиард-полтора не больших строк, которые должны быть проиндексированы строкой из 11-12 цифр. nosql DB занимает много оперативы для миллиарда записей!!! Затем по такой структуре, нужно делать быстрый поиск строк, в несколько потоков. С использованием чего реализовать такое хранилище на V?
      производительность нужна более 60000 rps на чтение, чтобы было быстрее чем redis.
      web framework V потянет более 60000 rps - простые выборки (или записи) из nosql DB?

  • @Jonstonrich
    @Jonstonrich 7 месяцев назад +1

    Создание подобного языка - это как собрать вертолет в гараже. Все аплодируют до первого полета.

    • @yegor256
      @yegor256  7 месяцев назад +1

      вроде бы первый полет уже давно случился, и все продолжают аплодировать

    • @Jonstonrich
      @Jonstonrich 7 месяцев назад

      @@yegor256 на самом деле надо признать, чел крут!

  • @RomanShchekin
    @RomanShchekin 7 месяцев назад +1

    Наверное имелось в виду "компилируемый", а не "скомпилированный" 🤨

    • @VLang
      @VLang 7 месяцев назад +1

      да)
      калька с английского compiled, оба слова в него переводятся

  • @crutchmaster9637
    @crutchmaster9637 6 месяцев назад

    Были бы еще именованные параметры по дефолту (если их больше 1), чтобы не было необходимости лезть в сигнатуру и чтобы при изменении/добавлении параметров ничего не ломалось. А еще бы деструктивное присваивание, передачу параметров, мммм.

    • @VLang
      @VLang 6 месяцев назад +1

      именованные параметры можно сделать через @[params] структуры. Будет абсолютно то же самое: foo(bar:2, baz: 3).

  • @watermelon0guy
    @watermelon0guy 6 месяцев назад +1

    Появилось желание дипломной проект писать не на Rust, а V :D
    Но надо конечно обдумать это решение

    • @alexandermedvednikov2558
      @alexandermedvednikov2558 6 месяцев назад +1

      Это хорошая идея. Язык очень хорош для академки. Успешно используется профессором Computer Science в его курсе в Georgia University.

    • @watermelon0guy
      @watermelon0guy 6 месяцев назад

      @@alexandermedvednikov2558 работа не сколько академическая, сколько прикладная. Реконструкция поверхности по изображениям с нескольких камер. И всё это в динамике, чтобы отслеживать деформацию. Сам я не механик(область математики) :), а как раз программист, которого взяли на эту кафедру делать проект
      Но язык выглядит очень привлекательно
      И всё таки используя Rust, можно получить какой то опыт, который востребован в коммерческих проектах. Про V я пока такого сказать не могу

  • @crutchmaster9637
    @crutchmaster9637 6 месяцев назад

    На первый взгляд выглядит это все как язык, на котором можно писать, когда надо что-то написать на си и не отстрелить себе яйца.

  • @СтаниславЧуриков-н5щ
    @СтаниславЧуриков-н5щ 7 месяцев назад +2

    Такой молодой а сколько мозгов, молодец!!!

  • @crutchmaster9637
    @crutchmaster9637 6 месяцев назад

    52:10 true fukkin story

  • @BumatuHe
    @BumatuHe 7 месяцев назад +1

    Как в джазе только девушки - И вообще я не девушка.... Ну у каждого свои недостатки...

  • @dimitrobest5293
    @dimitrobest5293 7 месяцев назад +2

    я би порекомендовал Александру вийти на связь с англоязичними блогерами которие на своих каналах проводят онлайн интервью с лайв кодингом алгоритмами, все как положено, єто как раз дало би ему возможность попрактиковаться в плане навика интервюирования и поспособствовало популяризации язика. он даже может предложить писать решение алгоритма задачи на язике V. Ну и заголовки видео типа "Interview with V language creator" уже весьма кликабельни)

    • @VLang
      @VLang 7 месяцев назад +2

      Скоро будет интервью с американским подкастом.

    • @VLang
      @VLang 7 месяцев назад

      @ortsaslan Спасибо! Звук исправлю :)

  • @Izopropilen
    @Izopropilen 2 месяца назад

    Вроде толковый парень, и подход серьезный (потому что после хакер-ньюза можно подумать что V это что-то на уровне BolgenOS). Но...что имеем: по сути Го с добавленными фичами и вездесущими mut'ами по всему коду, опять же GC (при чем хороший будет потом, а пока "good enough"), скорось тоже явно не сишная, скорее приближающаяся к Go. Мне кажется, четкого виденья нет, все как-то по инерции движется. Вот взять того же Руфуса(или как там его) который Nim делает, жесткий дядька, готов глотки грызть за каждую фичу, чтобы все было как положено (в его понимании) потому что человек по уму все продумывал изначально. А тут "ну добавим это, или это, а это вот уберем, может быть, а может быть и нет". Я считаю дебильной повсеместную претензию к новым языкам типа "а какая у вас киллерфича", но причина существования языка должна быть. А тут получается что в идеале это будет Go с энумами, самтайпами и мутами вместо var. Ну такое...

  • @pin689
    @pin689 7 месяцев назад +2

    В "простом" языке аж 5 0_0 способов управления памятью. 5 !
    Разве это просто

    • @VLang
      @VLang 7 месяцев назад +15

      По умолчанию GC, самый простой из возможных. Устроит 95% пользователей. Те 5%, кому нужны другие варианты, имеют возможность их использовать :)

  • @GrampusLee
    @GrampusLee 5 месяцев назад

    V一定会取得成功

  • @LANg.gg8
    @LANg.gg8 7 месяцев назад

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

    • @yegor256
      @yegor256  7 месяцев назад

      на сколько я знаю, автор не живет в РФ

    • @ВладимирЧескидов
      @ВладимирЧескидов 7 месяцев назад

      И тут у семи восьмых человечества появились вопросы к автору комментария, считающему их нецивилизованными. Цивилизация - это принцип на котором строится и стоит государство. На Земле несколько цивилизаций и они с вами не согласны считать, что у них нет государств

  • @user-fg6ng7ej6w
    @user-fg6ng7ej6w 7 месяцев назад +2

    спасибо! отличная беседа.

    • @yegor256
      @yegor256  7 месяцев назад

      мы старались