ЛекториумМедиатека
Личный кабинет

Компромиссы, или Как проектируются языки программирования

Когда-то компьютеры были большими, а языки программирования — маленькими. Когда-то совсем давно. Теперь компьютеры довольно маленькие, а языки — довольно большие. Почему? Все дело в балансе: слишком большой язык сложно изучать, слишком маленький — сложно использовать. Это один пример компромисса в дизайне языков, и таких примеров очень много на разных уровнях абстракции: от вопросов бинарной совместимости до конкретного синтаксиса и читаемости программ.

Этот доклад посвящен таким компромиссам: почему разработчики языков делают так или иначе. Мы рассмотрим несколько характеных примеров, касающихся Kotlin, Java, Scala и C#, что позволит сформировать некоторое представление о том, как проектируются языки.

Лекции курса

20
  1. Clean Tests: how to structure your tests, so that they serve you wellPawel Lipinski
  2. Groovy DSL для plugin-ов: Расширения человеческим языкомБарух Садогурский
  3. JBoss Drools Expert против грязиВиктор Полищук
  4. JDK8: Stream styleСергей Куксенко
  5. Java Embedded у вас дома!Александр Мироненко, Александр Белокрылов
  6. Java mapping для прагматичных программистовВладимир Красильщик
  7. Java-сертификация. Что такое и зачем это нужно?Сергей Клименков
  8. Spring 4.0: новое поколениеЕвгений Борисов
  9. UrsaJ: HTTP File StorageКузьма Деретюк
  10. Аварийный дамп — «черный ящик» упавшей JVMАндрей Паньгин
  11. В поисках Tommy HilfigerМихаил Хлуднев
  12. Занимательные истории из жизни технической поддержки JVMНикита Липский, Михаил Быков
Показать все 20 лекций
  1. Как я создал desktop-приложение на Java, скачанное 9 000 000 разАнтон Кекс
  2. Компромиссы, или Как проектируются языки программирования▶ Вы тут
  3. О чём молчат Heap Dump-ыАлексей Шипилёв
  4. Мутационное тестирование, или О чём молчит Code CoverageГлеб Смирнов
  5. Парадигмы ООП, основы здравого дизайна и архитектуры Java приложенийНиколай Алименков
  6. Платформа для Видео сроком в кварталАлександр Тоболь
  7. Спорим, в твоем приложении есть утечка памяти?Никита Сальников-Тарновский
  8. Франкенштейнизация Voldemort или key-value данные в ОдноклассникахРоман Антипин

Онлайн-курсы по программированию

3