Функциональное программирование на elixir

12

Click here to load reader

Upload: anjlab

Post on 15-Apr-2017

610 views

Category:

Technology


9 download

TRANSCRIPT

Page 1: Функциональное программирование на Elixir

Функциональное программирование на Elixir

Владимир Цыганов AnjLab Tech Talks

г. Владимир

Page 2: Функциональное программирование на Elixir

Erlang

• Разработан для применения в распределенных отказоустойчивых системах

• Концепция “Let it crash”

• набор библиотек OTP для построения приложений, надежных на 99,999999%

Page 3: Функциональное программирование на Elixir

Elixir

• Создан в 2012 г. Хосе Валимом (José Valim)

• Компилируется в байт-код для Erlang VM (BEAM)

• Вызов Erlang-функций без влияния на время исполнения кода

• Полиморфизм, макросы, pattern matching

Page 4: Функциональное программирование на Elixir

Типы данных

• Value-типы: int, float, atom, range, regex

• Системные типы: PID, reference

• Коллекции: tuple, list, map, binary

• Функции

Page 5: Функциональное программирование на Elixir

Pattern matching

Page 6: Функциональное программирование на Elixir

Модули

Page 7: Функциональное программирование на Elixir

Pipe оператор

Page 8: Функциональное программирование на Elixir

Многопоточность

Page 9: Функциональное программирование на Elixir

Применение

• Микросервисы

• High-load сервисы

• Web (Phoenix Framework)

Page 10: Функциональное программирование на Elixir

Phoenix Framework

• MVC вэб фрэймворк

• OTP-приложение

• Быстрый, многопоточный

Page 11: Функциональное программирование на Elixir

Phoenix Framework• Endpoint • Router • Controller • View • Template • Channel

Page 12: Функциональное программирование на Elixir

Спасибо за вниманиеanjlab.com

twitter.com/AnjLab

Ресурсы: elixir-lang.org

phoenixframework.org