Лучшие доклады fpconf 2015
В прошлом году состоялась первая конференция, посвященная функциональному программированию - fpconf. Судя по рассказам моих знакомых, подобралась неплохая компания и было несколько действительно крутых докладов. К счастью, вам не надо смотреть все выложенные видео, чтобы найти те самые доклады.
Дисклеймер: выбранные материалы и степень их крутости отражают личное мнение автора. Ваше мнение может отличаться.
1. Clojure Data DSL’s для web разработки
Николай Рыжиков (46 мин)
Код и данные, как Инь и Янь, и граница между ними при пристальном взгляде начинает исчезать. На примере web стэка для clojure мы познакомимся c Data DSL - hiccup, honeysql, prismatic schema, в режиме реального времени попробуем написать свои DSL и познать Дао.
2. Фронтенд без грусти
Никита Прокопов (50 мин)
Писать веб-приложение — то еще занятие: медленно, сложно, да и платформа скорее мешает, чем помогает. В докладе мы ответим:
- Как функциональный подход помогает делать веб-приложения?
- Может ли база данных быть иммутабельной?
- Зачем вообще на фронте база данных?
- Что интересного можно сделать с такими инструментами?
Причем не вообще, а на конкретных примерах ClojureScript и DataScript.
3. Scala performance для сомневающихся
Роман Гребенников (48 мин)
Язык Scala нынче модный: тут вам и паттерн матчинг, и рекурсия, и коллекции, обильно приправленные лямбдами, а также много других страшных слов из мира функционального программирования, для понимания которых не нужна ученая степень по математике. И все эти плюшки органично переплетены в такой язык, начав писать на котором, очень тяжело перестать. Но волшебство функциональной легкости заканчивается с фразой “а почему я переписал 100 строк лапши на Java в однострочник на Scala, но оно стало работать в 3 раза медленнее?”, и мечта о прекрасном языке превращается в тыкву. Суровая реальность грязным сапогом как бы говорит нам, что абстракции языков высокого уровня могут скрывать монстров и всё удобство имеет свою цену. И если вы делаете на Scala не простое CRUD-приложение, а что-то, хоть отдаленно связанное с нагрузкой, необходимо хорошо понимать, во что именно вам обходятся все вот эти монады-шмонады. Доклад может открыть глаза на возможные подводные камни производительности людям, практикующим программирование на Scala. В процессе будет рассказано:
- об интеграции jmh и sbt;
- о том, как заставить scalac рассказывать о том, что он там наоптимизировал;
- о тайнах паттерн-матчинга, хвостовой рекурсии и scala-коллекций;
- об умном HotSpot, который геройски все это оптимизирует.
P.S. Этот доклад Роман читает не впервые, так что возможно вы его уже смотрели.
4. Самурайский путь молодого Scala-программиста
Сергей Лобин (45 мин)
История о том:
- Как в “Спутнике” появилась Scala.
- Как написать функциональный поиск.
- Какие мы набили шишки на пути в бой.
- Правда ли что Scala такая прожорливая.
- Плюсы и минусы разработки на Scala.
5. F# TYPE PROVIDERS: THE CURRENT STATE
Сергей Тихон (33 мин)
F# Type Providers это механизм позволяющий упростить интеграцию кода и данных и является альтернативой подходу кодо-генерации. В докладе будут рассмотрены:
- Code Quotations и принципы работы type provider’ов.
- Обзор существующих type provider’ов.
- Особенности разработки собственных type provider’ов.
- Нововведения F# 4.0 для type provider’ов.