Язык Scala и поддержка Scala в IntelliJ IDEA
В докладе Александр Подхалюзин рассматривет различные подводные камни, с которыми может столкнуться Scala-программист. Также рассмотрены некоторые высокоуровневые языковые конструкции, внутреннее устройство которых может быть интересно (например, как они транслируются в байт-код). Кроме того, рассмотрена такая прикладная задача, как бинарная совместимость Scala-программ.
Кроме того, Александр Подхалюзин рассказывает о своём опыте разработки Scala plugin для IntelliJ IDEA и в частности:
— компилятор как спецификация: cложности поддержки языка;
— почему практически невозможно повторить анализатор Scala, а можно лишь написать его адекватное приближение;
— почему в компиляторе не проходят некоторые implicits конверсии, которые, вроде как, должны бы проходить;
— когда должен отрабатывать local type inference (вывод generic параметров по вызову), а когда нет;
— можно ли обойти отсутствие в языке понятия функции второго порядка с переменным числом параметров.
Многое из того, что рассмотрено в отношении языка Scala, с небольшими изменениями может быть перенесено и на другие языки для JVM. Доклад полезен не только Scala-разработчикам, но и всем, кто пишет код на языках для JVM.
АвторАлександр Подхалюзин
ОрганизаторСообщество JUG.ru
Лекции курса
22- Introduction to Vaadin 7Sami Ekblad
- Creating reusable web componentsSami Ekblad
- Миллионы котировок в секунду на чистой JavaРоман Елизаров
- Чем хорош язык ScalaПавел Фатин
- Язык Scala и поддержка Scala в IntelliJ IDEA▶ Вы тут
- Play Framework 2.0 в IntelliJ IDEAДмитрий Найданов
- Как нам спасти Java? Часть 1Антон Кекс
- Как нам спасти Java? Часть 2Антон Кекс
- Динамическая (JIT) компиляция в JVMВладимир Иванов
- Новинки в java.util.concurrentДмитрий Чуйко
- Java: High-level overviewGeorges Saab
- ForkJoinPool в Java 8Алексей Шипилёв
Показать все 22 лекции
- Проект OpenJDKАртём Ананьев
- Разработка модулярного софта — добро пожаловать в АД!Барух Садогурский
- Bintray: Масштабируемый сервис в облаке с нуляБарух Садогурский
- Power of GradleЕвгений Борисов
- eXtreme Application Platform (XAP)Евгений Борисов
- Excelsior JET: обзор возможностейНикита Липский, Павел Павлов
- Excelsior JET: внутренняя архитектураНикита Липский, Павел Павлов
- Разработка совместимого API: гений без злодействаМихаил Ершов
- Часть 1. Как и зачем эмулировать распределённый кластер в JVMАлексей Рагозин
- Часть 2. Сеть — это большая JVMАлексей Рагозин
Онлайн-курсы по программированию
3
Машинное обучение для анализа текстов
От бизнес-идеи к ее реализации: учимся инновационному предпринимательству с нуля.
С платными опциями

Разработка игры-платформера на Defold: базовый уровень
Создайте свой первый платформер с нуля! За 7 недель вы не просто освоите движок Defold, а пройдете весь путь геймдев-разработчика: от кода и анимаций до дизайна и сюжета.
Бесплатный

Python для начинающих
Курс посвящен основам программирования на языке Python — одном из самых популярных и понятных языков, идеально подходящих для первого знакомства с IT.
Бесплатный
