Top.Mail.Ru
Разработка
Архитектура
Древняя магия в повседневном коде: пять принципов функционального программирования в пяти языках
10 апреля
13.25-14.05
402. Инфраструктура

Функциональное программирование — это не монады из учебника по Haskell. Это пять конкретных принципов, которые вы уже используете в production-коде, не подозревая об этом.

Доклад раскрывает фундаментальные свойства ФП через призму пяти языков с разной философией: OCaml (академическая чистота), Scala (JVM-прагматизм), Python (простота), JavaScript (вездесущность) и Rust (системная безопасность).

1. Функции как значения — это не синтаксический сахар

Почему замыкания в JavaScript — это не "хак", а фундаментальное свойство

Как Python скрывает каррирование за декораторами

Что Rust требует явно писать то, что OCaml делает по умолчанию

2. Ссылочная прозрачность: почему ваш код непредсказуем

Разница между "работает" и "работает всегда одинаково"

Как Scala балансирует между чистотой и реальностью JVM

Почему в Python чистые функции — вопрос дисциплины, а в Rust — гарантия компилятора

3. Иммутабельность — это не про const

Что значит "данные не меняются" в языках с GC и без

Persistent data structures в OCaml vs structural sharing в JavaScript

Как система владения Rust превращает иммутабельность в zero-cost abstraction

4. Декларативность: "что" вместо "как"

От императивных циклов к map/filter/reduce

Почему list comprehensions в Python — это не просто синтаксис

Как pattern matching в Scala и Rust меняет подход к обработке данных

5. Выражения vs инструкции: когда if возвращает значение

Почему в OCaml нет return

Как тернарный оператор JavaScript стал основой функционального стиля

Expression-oriented programming в Rust и statement-oriented в Python

Презентация в состоянии доработки.