Тернарный оператор в Go. Социальный эксперимент против диктатуры if else

Расширяем горизонты

Методы и техника разработки ПО
GO
Расширение кругозора

Доклад принят в программу конференции

Целевая аудитория

Доклад будет полезен Go-разработчикам, которые скучают по «?:», любителям «синтаксического сахара», а также всем, кто интересуется внутренностями компилятора Go и любит эксперименты с языком.

Тезисы

Go — один из самых лаконичных языков, но у него до сих пор нет тернарного оператора. Почему? Так исторически сложилось, команда языка сознательно не добавляет эту конструкцию. Каждый, кто писал на C, Java, JavaScript или PHP, хотя бы раз ловил себя на мысли: «а вот тут бы пригодился ?: вместо громоздкого if-else».

Доклад посвящен исследованию восприятия идеи добавления тернарного оператора в Go. В рамках доклада проделана и опубликована исследовательская работа. Также проводится социальный эксперимент, включающий опросы разработчиков и контрибьюторов языка, сбор аргументов сторонников и противников изменений, анализ существующих proposal’ов и обсуждений в issue-трекере Go. Все результаты, метрики и анализ данных будут отображены и разобраны в докладе.

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

Более 10 лет опыта работы в IТ-отрасли. Начинал как PHP-разработчик, затем пришел к текущему основному языку разработки — Golang. Уделяет большое внимание высоконагруженным распределенным системам.

Видео