Языки программирования ПОД КАПОТОМ / LLVM, YACC и Bison / Крёстный отец Kotlin - Дмитрий Жемеров
ฝัง
- เผยแพร่เมื่อ 16 มิ.ย. 2024
- Сегодня говорим о том, как создаются языки программирования. Компиляторы, билдеры, документация, синтаксис, виртуальные машины, компиляция и интерпретация, парадигмы, LLVM, YACC, Bison, ANTLR, LSP, EBNF, DSL и другие технические ништяки из мира создателей ЯП сегодня в выпуске.
Гость выпуска Дмитрий Жемеров. Это человек, который стоял у истоков языка Kotlin, придумал его название и был инициатором его создания, который долгое время руководил разработкой большинства IDE в JetBrains, а сейчас занимается лингвистикой.
Так что, заваривайте чаинский/кофеинский и погнали😉
ДОП. МАТЕРИАЛЫ
🔹 Материалы из выпуска: t.me/itbeard/1139
🔹 Сайт Димы: yole.page
🔹 Блог Димы: yole.blog
🔹 Поддержать АйТиБороду на Patreon: / itbeard
ГДЕ СМОТРЕТЬ И СЛУШАТЬ
🔸 TH-cam: • Языки программирования...
🔸 Apple Podcasts: apple.co/41hwOIQ
🔸 Google Podcasts: bit.ly/itbeard-googlepodcasts
🔸 Spotify: spoti.fi/3Ktbf1Y
🔸 Скачать mp3: podcast.itbeard.com/e/178
НАВИГАЦИЯ
0:00 Дисклеймер
0:39 Вступление
1:23 Начало
2:33 Кто придумал название Kotlin
3:32 Как Дима пришел в программирование
11:03 Первая работа через FidoNet
13:07 Про необходимость вышки
14:38 Как попал в JetBrains
24:40 Про работу в Google
35:46 Что такое язык программирования
37:05 Почему каждый программист пишет свой ЯП
40:40 Язык программирования как бизнес-задача
46:35 Про компилируемые ЯП
49:00 Виртуальные машины и LLVM
54:00 Окружение ЯП: компиляторы, документация, LSP
1:00:08 С чего начать разработку Тьюринг-полного ЯП
1:05:30 Работа с памятью и типами
1:06:37 Парсеры языка: ANTLR, YACC & Bison, EBNF
1:12:40 Как работает компилятор: фронтенд и бэкхенд
1:15:45 Проблемы компилятора Kotlin
1:18:15 Как закладывается парадигма
1:19:20 Почему компиляторы пишут на функциональных языках
1:21:08 Асинхронщина и coroutine в Kotlin
1:25:40 Кто такой дизайнер языка
1:26:18 Обновление ЯП и поддержка версий, совместимость, DSL
1:35:28 Современный ЯП должен быть open-source
1:39:14 Зачем нужны Foundation
1:40:45 Литература для тех, кто хочет написать свой ЯП
1:42:00 Про айтишников в РФ, работу на “ручные” компании и что с этим делать
1:55:45 Где брать актуальную информацию
1:57:28 Чем бы занимался, если не программированием
2:03:47 Переход из JetBrains в лингвистику
2:08:32 Что изменилось в жизни за 2022 год
ПОДПИСЫВАЙТЕСЬ
🔻 Сайт: itbeard.com
🔻 Telegram: t.me/itbeard
🔻 WhatsApp: s.itbeard.com/whatsapp
#айтиборода #программирование #kotlin - วิทยาศาสตร์และเทคโนโลยี
Отличное видео
Инетерсно слушать про эти штуки: несколько лет работал с ANTLR очень плотно: как раз использовали для IDE.
И у меня есть два видео где я пилю виртуальную машину с нуля на шарпах. Кто видит этот коммент, залетайте - можете глянуть. Как раз +/- по теме видео)
Борода, не перебивай человека когда он говорит плиз.
Это называется «Диалог»
Очень понравилось, даже не ощущается, что видео длится больше 2-х часов ;). Спасибо за выпуск.
Очень крутой собеседник и главное интересный. Посмотрел на одном дыхании. Спасибо за выпуск!
спасибо!
Да это же человек-легенда. Я из Череповца, он для градообразующего предприятия нашего города писал программы
Skillfactory: Таким вы станете после нашего курса "Весь IT за неделю".
Наконец то интервью с программистом, а не с эффективным менеджером, блогером или феминисткой.
Спасибо, очень приятно было послушать
Ох... Не знаешь ты, что дальше будет...) Но спасибо!)
@@itbeard Лекс, позови Григория Петрова. Классный спец и рассказывает интересно) Привет от гомельчанина из Варшавы! 👋
@serga8543 пошел посмотреть его ролики на Ютубе, и первой же выпала запись с какой-то конфы российской со спонсорами ростелеком и другими. Видимо, Григорий не из нашенскийх.
@@itbeard Эх.. Тогда еще есть кандидат) - Богдан Стащук - очень крутые курсы делает на ютуб и юдеми + стримы! Учу по нему пайтон. Украинец, точно из нашенских💪 Маст хев на канале)
@@itbeard сколько смотрел с ним лекций и митапов, он никак о политике не высказывался. не очень понимаю, а что теперь с людьми из российских компаний теперь "западло" интервью снимать? И что значит не из наших? А из чьих вы тогда?
Ваш канал ранее не смотрел, не знаком с вами, поэтому удивляет такая фраза)
- Легко ли запушить изменения?
- Это не очень сложно, это скорее всего просто. Проще - не начинать☕️👨🏻 мне нравится
Какие же умные люди есть. Спасибо, было интересно
Офигеть! Очень крутой чел. Интересно было вас послушать, спасибо.
Спасибо большое Бороде за простые вопросы, например, про компилятор и интерпретатор, всегда интересно послушать, как человек с таким колоссальным опытом будет отвечать на базовый вопрос простыми словами
Kotlin, химия, лингвистика. Что только не делают чтобы на java галере не работать😅
Node.js даже учат
Лучшее интервью в этом году! Супер! Спасибо!
(Где-то в комментариях промелькнуло о "гордыне" Дмитрия. Не заметила - открытый, адекватный человек. Приятно слушать).
Я работал вместе с Димой и могу уверенно сказать, что гордыня это вообще последнее качество, которое ему можно приписать :)
А что? Вроде есть чем гордиться то.
Прикольный учитель информатики. А у нас в школе нам вдалбливали в голову что мы дураки ничего не поймём в компьютерах 😂
Крутой дядька, количество полезной информации на единицу времени зашкаливает, мое почтение 👍
Это очень круто! Спасибо за выпуск
Интервью- кайф. Отдельный респект за досьемку спустя время.
Хорошее интервью. Не все понял, но было приятно и интересно слушать. Спасибо, Лекс.
Вельмі цікавае інтэрв'ю! Дзякуй Вялікі Лёша!
Крутой ролик! Спасибо :)
Спасибо большое за выпуск. Помню как 4 года назад впервые попал на канал АйТиБороды, с интересом посмотрел несколько выпусков и под одним из них оставил комментарий/предложение пригласить Дмитрия Жемерова на интервью. И вот он тут. Здорово и круто! Спасибо!
Хехе, спасибо)
Спасибо, на одном дыхании просмотрел!
На здоровье!
Выпуск топ. Очень круто, когда гости такие интересные
Хоббит был первым компьютером который я себе смог купить будучи студентом, после МК-52. Жаль это была ученическая версия. Ещё выпускалась учительская. Хоббиты предназначались для школьного преподавания, их можно было объединить в сеть с главной учительской машиной. Я на нём на Лого на черепашей графике программировал, забавно было.
У меня тоже всё началось еще в средних классах школы с самодельного Спектрума, и зашитого в него Бейсика😊
А потом был IBM с MS DOS и Волков-коммандером, на 5ти дюймовых дискетах, с монохромным дисплеем. Только не оранжево-черным, как у гостя, а зелено-черным)) И QBasic-ом))
Я на Агате в школе, компьютер Дубна у друга, потом универ PC XT, 486.
BBS, FIDO в 1997 году шли вместе с Интернетом.
В 1999 стал на Linux пересаживаться.
Зелено-черный дисплей - да! У меня терминал в Линухе и скйчас зелено-черный)
У меня с XT, DOS и QBasic. Потом был Паскаль, Делфи, Ассемблер, Си, С++, PHP, JS, Java и сейчас Котлин. Мечтаю однажды создать свой язык и компилятор для него.
Зелено-черный. Несбывшаяся мечта. У меня был стандартный маленький черно-белый ублюдок «Электроника»
А я на Спектруме успел еще кроме Бейсика еще и Лазер-Бейсик попробовать (игру со спрайтами не нем делал), и Ассемблер (тоже игру одну сделал). Ну и баловство с диззассемблерованием чужих игр в Gents/Mons (долго описывать)...
Не понимаю, почему у такого классного интервью мало просмотров…
людей многое теряют.
Спасибо, Борода классное интервью!
Есть специфика, которые не все понимают, а так да позновательное видео
Тому, що не всі програмисти
Ну вот и новые гости, поехали. Как всегда безупречного и профессионально:)
Одно из самых интересных и актуальных интервью!!! Порадовала позиция человека. Спасибо большое.
Отличный выпуск! Прослушал, параллельно напиливая автотесты на один из наших эндпоинтов. AQA, привет коллеги, если здесь)
А мы везде, и про программирование, и про тестирование смотрим, пока работаем...
Ого, какой полезный и интересный выпуск. Круто!
Сейчас форт читаю/изучаю
Чтобы понять базу мать её.
Форт изучают, чтобы говорить, как мастер Йода.
Спасибо Дмитрию за интересный рассказ - отличный гость, и за трезвую позицию по происходящему!
Новий випуск😍😍😍😍, + мотивація до знань😶🌫і корисна інформація🥳
Крутой чувак !!! Спасибо за выпуск !!!
Это то видео которое нужно пересматривать что бы уловить суть всего
Интересно. Совсем недавно смотрел с ним интервью 6летней давности, и тут этот выпуск
Обычно все выпуски слушаю на х1.5, а тут иногда даже приходится на 0.75 слушать, Дима слишком хорош в скоростной читке))
Ух какой видос кайфовый!
Очень интересная беседа, спасибо!
Интервью - пушка 👍😍
аффигеть! оказалось, что я не подписан.. 🫣 получается, всё это время смотрел авансом
спасибо большое за видео!!!!
Спасибо, на удивление интересно было послушать, и про лингвистику тоже интересно.
Причем как сама лингвистика, так и материальная сторона вопроса. Понятно что тут речь не про деньги лопатой, а в том как заниматься интересными для себя темами(которые может быть не такие денежные как ИТ) и семейный бюджет как то сводить.
В общем то, конечно, этот вопрос не только к Дмитрию, в целом интересно было бы обсудить.
The interview conducted by Beard was outstanding, leaving a strong impression with his insightful questions and engaging conversation.
Thank you!
Серьёзная тема,,,,,,,,,,
Всем Адекватности мира и добра
Кто, как я, учится - Успехов в учёбе.
неожиданно интересно.
и круто.
Какая, однако, забавная ситуация! В 1992 году, когда в первом классе я записался в кружок по программированию (учили BASIC, а у меня были дома zx spectrum и IBM286 -- и это в маленьком уездном городке Псковской области), и который закрылся на 3-ем занятии в пользу шахмат (мне было скучно быть единственным, кто сначала подумал, а потом походил конем из угла в угол за 6 ходов...), у меня образовался незакрытый гештальт по программированию, чем я сейчас занимаюсь (и Kotlin мне кажется восхитительным языком!), я, тогда в 1994-м, точно решил стать писателем (со временем, это стало очень близко к лингвистике). Вся жизнь наоборот, а мы +/- ровесники.
C2 wiki до сих пор интересно почитать, хороший ресурс
Про выполнение программ нормально пишет танненбаум в архитектуре компьютера. Разбирают компиляцию, интерпретацию, уровни этого барахла. Рекомендую. Но это не вечернее чтиво, там не все легко идет.
Огромное спасибо особенно за часть с гражданской позицией.
Интересны все затронутые темы, и про языки программирования (особенно упоминание Lisp и Forth) и про компиляторы, и про лингвистику и про D&D (которым я сам недавно заинтересовался).
В самом начале видео я хотел написать о том, насколько много общего есть в языках программирования и в человеческих языках общения.
Кроме того, язык программирования не обязательно должен иметь какой-то конкретный транслятор (компилятор или интерпретатор) существуют и чисто алгоритмические языки (например РАЯ). Да вроде и сам Fortran изначально был в первую очередь алгоритмическим языком. Т.е. на нём писались решения задач. А так же Алголы в своё время разрабатывались тоже во многом для этого. Т.е. целевой аудиторией не обязательно были компьютеры. А во многих случаях читателями были люди.
В той части, где говорится о не опенсорсных языках программирования, мне почему-то вспомнился Wolfram.
Про лингвистику, хотел сказать, что очень интересная тема - это искусственные языки такие как логлан, токипона, эсперанто. Я в своё время начал изучать эсперанто для того чтобы попробовать написать на его базе семантический анализатор. Т.е. я хотел использовать эсперанто как модель естественного языка с более простой морфологией и синтаксисом для последующего программного анализа семантики. Но как-то отвлёкся от программирования и занялся другими делами. Хотя искусственными языками до сих пор интересуюсь. Крайне занимательная вещь.
Про D&D - я сам недавно заинтересовался этой темой.
Что делать чтобы устроится на работу, где будет enterprise(на работе) опыт работы с компиляторами/отладчиками/(ide)?(Я яп свой писал c помощью antlr4, имею представление, компилировался яп в LLVM IR) Cейчас очень сложно(особенно на такую узкую специализацию) устроится, что стоит делать? Собесы? я даже до отклика hr'а не дохожу
первый выпуск, основную часть которого захотелось послушать еще раз в будущем, чтоб "закрепить" материал. очень интересно, гость клёвый
я правда так и не понял как трамвай помог попасть в jetbrains 😅
Ахаха, с трамваем мутная тема, согласен))
Трамвай никак не помог, он просто мимо ехал :)
Спасибо за выпуск! Желаю каждому и себе с собой честно говорить и делать смелые решения, выборы )
Спасибо!
Спасибо!
Очаровательный немолодой человек 😊
Выпуск супер
А что за байка?)
Читал его книжку Kotlin in action 🙂
И как?
54:30
Создатели C++, то есть комитет, не выпускают ни компилятора, ни документации - это все делает сообщество. В разработке языка программирования конечным продуктом является сам язык программирования - в виде стандарта
Дмитрий крутой! Очень интересно, но очень сложно.
Классная байка у бороды :)
Драгон бук еще осилить надо умудриться)
С годами приходит понимание как создать свой ЯП.
Но по сути это получится некий интерпритатор команд процессора :)
А процессоров и ОС на сегодня много, и это не финиш.
Если в 90х у тебя были варианты создать свой продукт, то сегодня только пользоваться тем что есть, нравится или нет :) Во многом приходится "жанглировать чужими шарами" :)
Что в конечном итоге надоедает.
точнее сказать "интерпритатор текста в команды процессора"
@@user-tm5hi7xs3i Ну тогда интерпритатор текста в набор команд процессора ;)
Ведь к примеру оператор CLS, при очистке экрана делает заполнение 0, участка памяти экрана ;)
@@Franc_Net в чем отличие? =)
@@user-tm5hi7xs3i да, невнимательно прочитал ваш текст "команды" ;)
Вот для этого и придумали llvm. Ты пишешь фронтенд для своего языка и он автоматически компилируется под любой процессор и любую систему.
оххх, понеслось... ))
Спасибо за твою позицию и твою работу! Рад что есть такие люди, которые много готовы вложить в свою родину
Аааааааа почему у Вас, бл**ь телек криво висит?!?!))
Приятный интервьюер, приятный гость)
Спасибо за контент. Рад, что Дмитрий нашел то, чем интересно заниматься))
Про гугл все ясно, JetBrains отправили Дмитрия в командировку на год заниматься промышленным шпионажем 😏
Жалко не спросили почему они используют достаточно старый llvm -11
спасибо
Этот крутой человек золотой Грааль всех ответов из разряда "нет профильного образования" и укор всем компаниям что берут людей только с профильным образованием... Очень крутой чел который развивается не только вертикально то и горизонтально! Пример для всех в плате развития! Спасибо за интервью!
то есть, я так понял, чтобы получить работу в крутой айти компании нужно ехать во Фракфурт и лезть под трамвай.
Помню время Паскаль и потом Делфи 😊
Борода, я тебя умоляю, позови Константина Владимирова!)
з-нацистов не зову
1:26:25 нотный стан и музыкальная нотация. Разработаны несколько веков назад, написали и забыли )
Пример DSL.
Где такую кофту купили?
Паскаль был написан и представлен на математичпском форуме.
А первый компилятор с Паскаля появился только через два года. С тех пор и не ясно для подавляющей массы доморощенных прогеров.что значит "написать язык программирования".
Классно посмотреть на себя со стороны. Спасибо ❤
Это не очень сложно, это скорее всего просто, проще не начинать 😂
Аналог Хабра у иностранцев это Hashnode, но там уровень статей намного ниже, так как любой человек может писать туда в блоги.
Что за мерч такой бомбовый???
Бест, лайк
Я не шарю в теме котлина, но название компании в которой он роботал и продукты к которым был причастен, прибавили интерес к выпуску😊.
Видео ускорено?
как написали первый компилятор?)
абсолютно так же как писали все программы до изобретения компиляторов... на машинном коде естественно... компилятор из асма в машинный код.
Что же с нами делают машины..в кого превращают :)
В каком смысле
Привет всем, уважаемые. Может уже было это замечание, но всё же скажу: кроме синтаксиса и правил в языке программирования ещё важны библиотеки или там всякие импорты, которые написаны на более низком уровне для взаимодействия с ОС и железом. Без этих библиотек никак. У котлина они есть....
Стоит ли идти на инженера по автоматизации?? В России много разработчиков не хватает, нежели тестеровщиков. Стоит ли бояться внедрения искусственного интеллекта, заменит тестеровщиков в сфере it
Не заменит, но может стать помощником для автоматизаторов. Мне кажется это история про то как извозчики стали водителями
Хорошее интервью, политическая часть как всегда отвратительная (что с той стороны манямирок что с этой)
Крутое интервью. Посмотрел с большим удовольствием. Спасибо
1:47:43 что за компания? Таас? Не расслышал...
ТАСС
Обсуждали что нужно сделать чтобы язык сделать, забыли про стандартную библиотеку))
Она ж сама сабою появится 😅
😁 очередной пример разницы между "работы с информацией" и "работы со смыслами".
как думаете, какой процент везения был, что kotlin станет популярным?
Никто не скажет
Выпуск пушка! Дмитрий оч крутой чел, думаю как и многие здесь знаком с ним по книге "Kotlin in Action". Жаль что он редко появляется в медийке =(
ну а лекс к чему был этот акцент, что ЖБ не российская компания? ЖБ была и будет европейской компанией с Русскими корнями и от твоих слов ничего не поменяется!
Ну так она не российская. Ты понимаешь разницу между "российская" и "с русскими корнями", не?
@@itbeard ну корнями то Русскими =)
Спасибо за выпуск! продолжай в том же духе, ток политика слух режет. Люди стареют и умирают - власть сменится, а негатив из выпусков будет проецироватся на страну, а не на покойников
Лекс, про Бузову и кувалду и прочий трэш - это, вероятнее всего, повтор фильма Zомбоящик 2018 года от ТНТ. У нас, конечно, трэш творится, но не такого уровня накала...
Там был Азамат ещё. Я тогда пол часа посмотрел и честно вообще не выглядело как фильм, больше как трешшоу. Хотя я не исключаю, что на Германию у них другая сетка вещания
@@itbeard чекнул касты, да Азамат там был. Я это, конечно, не смотрел, но нагуглин про Бузову с кувалдой
это ностальгия, бро))! а мелкий чо то понимает в программировании))
Я Украину тоже поддерживаю, и языками интересуюсь, но все же как скалист, одобрить Котлин не могу...
Была трансляция?
Какая трансляция?
@@itbeard стрима этого
Это не стрим
@@itbeard пон
00:44:39 а что за стеб по поводу Питона не понял?
Несовместимость версии 2 и 3
ждав цьго відео ролика
4:10 больше удивляет что в СССР удаленка была!
"я в привилегированном положении.... ко мне пришёл человек из ТАСС - сразу нет.. приходят люди из Яндекса - собеседуем..." - лицемер.