Elm (язык программирования)
Elm — функциональный язык, предназначенный для декларативного создания графических интерфейсов, основанных на браузере. Elm предоставляет возможность описывать графические интерфейсы, не выходя за рамки функциональной парадигмы, используя функционально-реактивный стиль программирования.
Elm | |
---|---|
Класс языка | функциональная, функционально-реактивная |
Появился в | 2012 |
Автор | Эван Чаплицкий |
Расширение файлов |
.elm |
Выпуск | |
Система типов | статическая, сильная, с выводом типов |
Испытал влияние | Haskell, JavaScript |
Лицензия | пересмотренная лицензия BSD |
Сайт | elm-lang.org |
Разработан в 2012 году программистом Эваном Чаплицким (Evan Czaplicki) для дипломной работы по функциональному реактивному программированию для веб-интерфейсов[2]. С первого выпуска в документации на язык было много примеров и имелся онлайн-редактор, благодаря чему есть возможность быстро попробовать программировать на Elm прямо в браузере.
Изначальная реализация компилировала Elm в HTML, CSS и JavaScript. В следующих выпусках набор инструментов был расширен: добавлен REPL, пакетный менеджер, отладчик и установщики для Mac OS и Windows. На официальном сайте ведётся репозиторий библиотек, разрабатываемых для языка.
Примечания
- (unspecified title) — 2016.
- E. Czaplicki. Elm: Concurrent FRP for Functional GUIs Архивная копия от 4 июня 2016 на Wayback Machine
Литература
- Tate, B.A. and Dees, I. and Daoud, F. and Carter, J. and Moffitt, J. Elm // Seven More Languages in Seven Weeks: Languages That Are Shaping the Future. — Pragmatic Bookshelf, 2014. — 291 p. — ISBN 9781941222157.
- Grzegorz Balcerek. Elm by Example. — 2015.
- Richard Feldman. Elm in Acton. — Manning, 2019.
Ссылки
- elm-lang.org — официальный сайт Elm
- Проект компилятора Elm на сайте GitHub