Язык программирования Erlang

Erlang — функциональный язык программирования с сильной динамической типизацией. Язык отлично подходит для разработки распределённых вычислительных систем.

Erlang разработан и поддерживается компанией Ericsson в 1987 году для использования в телекомуникационных системах. Он был разработан для использования в распределённых и отказоустойчивых системах «мягкого» реального времени. В экосистеме Erlang имеется стандартная библиотека модулей и библиотека шаблонных решений — фреймворк OTP (Open Telecom Platform).

Программы на Erlang компилируются в байт-код, исполняемые виртуальной машиной BEAM, причём виртуальных машин может быть несколько на различных узлах распределённой вычислительной сети. Erlang-системы поддерживают горячую замену кода, что исключает остановку системы при установке обновлений.

В последние годы Erlang используется не только в телекоммуникационных системах, но и в разработке высоконагруженных распределённых веб-приложений. Например, чат Facebook и WhatsApp написанны именно на  Erlang. Также Erlang применяется в нескольких NoSQL-базах данных высокой доступности.

Виртуальная машина Erlang используется и в языке программирования Elixir. Сам язык программирования Elixir построен на базе Erlang, что обеспечивает распределённость, отказоустойчивость, исполнение в режиме мягкого реального времени, метапрограммирование с макросами и полиморфизмом. По сути, Elixir — это надстройка над Erlang, упрощающая разработку и сохраняющая все преимущества Erlang.

Мы в своей работе используем Elixir для разработки сервисов, работающих под высокой нагрузкой, требовательных к скорости отклика и устанавливающих большое количество подключений по websocket'ам.

Elixir — функциональный компилируемый язык программирования общего назначения. Он построен поверх языка Erlang, то есть Elixir — это почти тот же самый Erlang, но с «синтаксическим сахаром».

Использование Elixir с Erlang OTP обеспечивает распределённость и отказоустойчивость, исполнение в режиме мягкого реального времени, возможности метапрограммирования с макросами и полиморфизмом на базе протоколов.

Узнать больше →

Phoenix — веб-фреймворк, написанный на функциональном языке программирования Elixir. 

Использование фреймворка Phoenix наиболее целесообразно для проектов с высокой нагрузкой и для проектов, активно использующих веб-сокеты: например, системы для совместной работы, месседжеры, дашборды в реальном времени с высокой частотой обновлений информации.

Узнать больше →

Тематические технологии:

Язык программирования Ruby
Язык программирования Go
Язык программирования Python
Фреймворк Ruby on Rails
Язык разметки HTML
CSS — каскадные таблицы стилей
Язык программирования JavaScript
Библиотека React

Cтатьи по теме:

Серверные языки программирования
Серверные языки программирования нужны для реализации бизнес-логики, то есть разработчик при помощи языка программирования описывает возможные сценарии использования сайта или приложения.
Язык программирования Ruby
Ruby (ruby — рубин, руби) — интерпретируемый мультипарадигмальный язык программирования: динамический, объектно-ориентированный, рефлективный, императивный, функциональный. Активно используется в веб-разработке, в системном администрировании и в работе операционных систем (Mac OS X, Linux, BSD).
Язык программирования PHP
PHP — язык программирования, который наиболее распространён в сфере веб-разработки.
Язык программирования Python
Python — это высокоуровневый язык программирования общего назначения, который используется в том числе и для разработки веб-приложений. Язык ориентирован на повышение производительности разработчика и читаемости кода.
Язык программирования Java
Java — это достаточно универсальный язык программирования, который часто используется и для веб-разработки.
О технологиях в веб-разработке
04.03.2014  |  Статьи  —  веб-разработка
В веб-разработке используется много различных технологий и готовых продуктов: это языки программирования и разметки в «чистом» виде, базы данных и другие хранилища информации, программные продукты для упрощения разработки (фреймворки и системы управления сайтами), а также серверное программное обеспечение.
CMS — коробочные системы управления сайтами
Система управления сайтом — это программный продукт, который создан для упрощения создания основных видов сайтов. Как правило, системы управления достаточно универсальны, то есть на них можно собрать что угодно: от информационного сайта до интернет-магазина или портала.