Популярное

Музыка Кино и Анимация Автомобили Животные Спорт Путешествия Игры Юмор

Интересные видео

2025 Сериалы Трейлеры Новости Как сделать Видеоуроки Diy своими руками

Топ запросов

смотреть а4 schoolboy runaway турецкий сериал смотреть мультфильмы эдисон
dTub
Скачать

T-Dose 2014, Zimbu разрабатывает язык программирования на основе опыта, Брэм Муленаар

Автор: CityTV.nl

Загружено: 2014-10-29

Просмотров: 5349

Описание:

http://www.CityTV.nl
http://www.t-dose.org
http://www.zimbu.org
http://www.moolenaar.net
Плейлист:
   • T-DOSE 2014 Open Source Software conferenc...  

26 октября 2014 г.
T-Dose 2014, Zimbu. Разработка языка программирования на основе опыта, Брэм Муленаар

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

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

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

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

Например, один из важных вопросов — это то, как структурировать код, как хранить код,
который
должен быть целостным, в одном месте. Замечание заключается в том, что мы всегда
хотим добавлять новые функции поверх существующего кода. Должен быть хороший способ
расширить то, что уже есть, не переписывая его для каждой новой функции.
Механизм наследования в объектно-ориентированном программировании частично решает эту проблему.
Мы узнали, что множественное наследование слишком сложно. Но одиночное
наследование не покрывает всего, что нам нужно. Решение кроется в миксинах: блоках
функциональности, которые можно использовать и повторно. Это даёт программисту
выбор: использовать наследование там, где это целесообразно, и смешивать блоки кода там, где это
хорошо работает.

Ещё одно довольно очевидное наблюдение: код читается в десять раз чаще, чем пишется. Умение быстро писать — не самое главное, важно уметь легко читать и понимать код. Многие
языки совершили ошибку, сделав код простым для написания, но сложным для чтения.
Другие требуют, чтобы типы переменных были указаны очень подробно, что затрудняет понимание того, что код на самом деле делает. Можно найти баланс между этими двумя вариантами, и есть несколько новых языков, которые предлагают решения в этой области.

Пример того, что ни один из существующих языков не предлагает хорошего решения, — это поддержка
генерации кода. Конечно, это возможно, но требует написания Makefile и/или скриптов на другом языке, которые часто оказываются непереносимыми и требуют установки множества других инструментов. Мы видим, что это
вызывает серьёзные проблемы с поддержкой. Решение приходит не от существующих
языков программирования, а от приложений: плагинов. Плагины компилятора,
написанные на том же языке, что и сама программа, могут использоваться для генерации
кода. Оператор import может определить входные данные и плагин, используемый для их обработки. Это легко понять и позволяет избежать проблем с поддержкой.
Плагины можно распространять отдельно и использовать повторно, так же, как библиотеку.

В докладе будут рассмотрены различные подобные наблюдения и их влияние
на выбор дизайна языков программирования. Примером служит текущее
состояние языка Zimbu, см. www.zimbu.org. Лучшая проверка того, что новый
язык работает хорошо, — это написание программ на нём. Поэтому компилятор Zimbu
был написан на Zimbu. В докладе также будет объяснено, как это возможно.

Брэм Муленар (www.moolenaar.net) хорошо известен своей работой над Vim,
популярным текстовым редактором, доступным практически для любой операционной системы. После
изучения электроники и разработки деталей цифровых копировальных аппаратов он
решил, что создание программного обеспечения с открытым исходным кодом более полезно и увлекательно. Однако это
не приносит большого дохода. В настоящее время он работает в Google, одной из
немногих компаний, поддерживающих программное обеспечение с открытым исходным кодом. В это же время он работал в
Уганде и продолжает помогать бедным детям через фонд ICCF
(www.iccf.nl).

T-DOSE — это бесплатное ежегодное мероприятие, проводимое в Нидерландах для содействия использованию и разработке программного обеспечения с открытым исходным кодом. В ходе этого мероприятия участники проектов с открытым исходным кодом, разработчики и посетители могут обмениваться идеями и знаниями. В этом году мероприятие пройдет 25 и 26 октября 2014 года в Университете прикладных наук Фонтис в Эйндховене.
Ядро.

T-Dose 2014, Zimbu разрабатывает язык программирования на основе опыта, Брэм Муленаар

Поделиться в:

Доступные форматы для скачивания:

Скачать видео mp4

  • Информация по загрузке:

Скачать аудио mp3

Похожие видео

«Проектирование API на основе типов в Rust» Уилла Крайтона

«Проектирование API на основе типов в Rust» Уилла Крайтона

"The Economics of Programming Languages" by Evan Czaplicki (Strange Loop 2023)

Why Isn't Functional Programming the Norm? – Richard Feldman

Why Isn't Functional Programming the Norm? – Richard Feldman

Modernizing Compiler Design for Carbon Toolchain - Chandler Carruth - CppNow 2023

Modernizing Compiler Design for Carbon Toolchain - Chandler Carruth - CppNow 2023

T-Dose 2014, Testing Video4Linux Applications and Drivers, Hans Verkuil

T-Dose 2014, Testing Video4Linux Applications and Drivers, Hans Verkuil

🤷 AI обучен на говнокоде! Разработчиков компиляторов, протоколов и СУБД не хватает, а LLM не может

🤷 AI обучен на говнокоде! Разработчиков компиляторов, протоколов и СУБД не хватает, а LLM не может

"Systems that run forever self-heal and scale" by Joe Armstrong (2013)

RAG | ВСЁ, что тебе нужно знать (+ 11 Продвинутых стратегий)

RAG | ВСЁ, что тебе нужно знать (+ 11 Продвинутых стратегий)

Pkl ing your config makes it last longer-Philip Hölzenspies

Pkl ing your config makes it last longer-Philip Hölzenspies

Why Static Typing Came Back • Richard Feldman • GOTO 2022

Why Static Typing Came Back • Richard Feldman • GOTO 2022

David Spivak - Category Theory - Part 1 of 6 - λC 2017

David Spivak - Category Theory - Part 1 of 6 - λC 2017

Принц Персии: разбираем код гениальной игры, вытирая слезы счастья

Принц Персии: разбираем код гениальной игры, вытирая слезы счастья

CppCon 2014: Mike Acton

CppCon 2014: Mike Acton "Data-Oriented Design and C++"

Responsive compilers - Nicholas Matsakis - PLISS 2019

Responsive compilers - Nicholas Matsakis - PLISS 2019

Как сделать 90% того, что делают плагины, в чистом Vim'е

Как сделать 90% того, что делают плагины, в чистом Vim'е

Let's Create a Compiler (Pt.1)

Let's Create a Compiler (Pt.1)

"The Mess We're In" by Joe Armstrong

Купил ИГРОВОЙ НОУТ Acer nitro 5  со СГОРЕВШЕЙ ПЛАТОЙ по низу рынка... Чего ждать?

Купил ИГРОВОЙ НОУТ Acer nitro 5 со СГОРЕВШЕЙ ПЛАТОЙ по низу рынка... Чего ждать?

33 продукта из отходов, которые вы едите каждый день

33 продукта из отходов, которые вы едите каждый день

Is It Time to Rewrite the Operating System in Rust?

Is It Time to Rewrite the Operating System in Rust?

© 2025 dtub. Все права защищены.



  • Контакты
  • О нас
  • Политика конфиденциальности



Контакты для правообладателей: [email protected]