jokerconf Joker 2013 (15.10.2013 — 15.10.2013)

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

img

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

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