Метка «erlang»

Доброе время суток, уважаемая аудитория хабра.

В данной публикации я хотел описать свой опыт перехода с корпоративного Java на Erlang.

Погружения в Erlang в первом приближении

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

После довольно продолжительного времени Java/Python разработки, я решил кардинально изменить сферу деятельность и открыл для себя Erlang.
Читать полностью »

image

Введение

Телекоммуникационный проект KAZOO молодой компании под названием 2600hz (США) уже успел собрать несколько отраслевых наград и используется многими крупными операторами связи.

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

KAZOO — быстро развивающаяся открытая (open-source) платформа виртуальной облачной телефонии, на основе которой можно строить сервисы виртуальных АТС, виртуальные мобильные сети и другие масштабные облачные телекоммуникационные решения операторского класса.
Читать полностью »

Хакатон как способ расширения кодерского сознания. Фото корреспондентский отчет

Проснувшись однажды утром… (нет). Проснувшись как-то вечером… (нет!). Короче, проснувшись однажды на работе солнечным утром (вот уже провокационно звучит), и протерев глаза от производственной рутины, подумал я о том, что команда наша — конечно великолепная, но технологически несколько узковата… “И надо бы покодить на чем нибудь другом!” — блеснул я оригинальной мыслью. И вот мы сделали собственный хакатон, который заточили не по тематике, а по технологии. Получилось, сразу скажу… неплохо.

Читать полностью »

imageНаверное на неделю игры 2048 на хабре уже не успеваю, но статья не столько о игре сколько о websocket сервере на Erlang. Небольшая предыстория. Когда начал играть в 2048, то просто не мог прекратить. В ущерб работе и семье. Поэтому принял решение, что играть за меня должен бот. Но загвоздка в том, что игра клиентская, из-за чего не ведется глобальный рейтинг и не так удобно играть без браузера. Поэтому я и решил сделать серверную часть, где был бы рейтинг. И где мог бы играть мой бот без браузера.
Читать полностью »

imageДоброго ночи! Мы продолжаем изучение Erlang для самых маленьких.

В прошлой главе мы рассмотрели как объявлять функции и как объединять их в модули. В этой главе мы рассмотрим синтаксис функций более подробно.

Читать полностью »

Привет!

Прошло уже больше полугода с момента старта проекта Хекслет. Напомню: мы проводим бесплатные онлайн-курсы по программированию и смежным дисциплинам. По традиции сегодня мы расскажем про новые курсы.

Статистика

  • Завершено четыре курса (всего – больше 100 уроков)
  • Сейчас в процессе – еще три курса, + запланирован старт двух курсов
  • 19 000 студентов зарегистрировано
  • Они сдали более 450 000 тестов
  • Просмотров лекций – больше 277 000 (не считая подкастов в iTunes и раздачи через битторрент)
  • 444 000 посетителей и 1.6M просмотров страниц

Новые курсы

Erlang / OTP


Читать полностью »

В сети уже есть несколько обзоров производительности этого решения от Amazon, в этой статье я не преследовал цели проверки уже полученных результатов, меня интересовали некоторые особенности, не рассматриваемые в других источниках, а именно:

  1. в документации сказано, что Amazon старается сохранять порядок сообщений, на сколько хорошо он сохраняется?
  2. как быстро происходит получение сообщения при использовании Long Polling?
  3. насколько ускоряет процесс пакетная обработка?

Читать полностью »

imageДоброго вечера, дорогие Хабровчане. Мы продолжаем изучение Erlang для самых маленьких.

В прошлой главе мы рассмотрели базовые типы данных, списки и кортежи. А так же научились пользоваться сопоставлением с образцом и генератором списков.

В этой главе мы поднимемся на следующую ступень и рассмотрим модули и функции.

Читать полностью »

Erlang для самых маленьких. Глава 1: Типы данных, переменные, списки и кортежи
Добрый день, дорогие читатели.

Это первая статья из цикла. Многим она может показаться до ужаса банальной т.к. здесь рассматриваются самые основы. Но для новичков она будет полезной, поэтому без нее обойтись нельзя. Так же здесь обращается внимание на пару интересных и неочевидных моментов.

От автора

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

Я всячески стараюсь проповедовать функциональных подход и делаю все возможное, что бы как можно больше людей прониклось его красотой и лаконичностью. Мы с друзьями хотели перевести на русский замечательную книгу, но нам не удалось договориться с автором. Мы не хотим тягомотины с правами и поэтому оставили это дело.

Вместо этого я хочу написать цикл статей об этом языке, взяв за основу эту книгу. Ну и, как мне кажется, хабр — лучшее место для их публикации. Хочу обратить внимание: эти статьи — не вольный перевод вышеуказанного учебника. Мысли изложенные в книге — это основа, план повествования. Конечно, во многом они будут совпадать, но так же есть и интересные моменты из других публикаций и личного опыта (хоть и скромного).

Читать полностью »

Привет!

Сегодня появилась новая версия Erlang плагина для IntelliJ IDEA.

Что нового?

C выхода прошлого релиза прошло уже 7 месяцев, а значит вас ждёт много нового:

  • Новые и улучшенные рефакторинги: introduce function, extract/inline variable и другие
  • Новые инспекции: unresolved include/include_lib, unresolved function и другие
  • Навигация по коду: включенные файлы, результаты тестов, callbacks
  • Улучшения совместимости с IntelliJ-based средами разработки
  • Расширена поддержка цветовых схем и форматирования, в том числе поддержка comma-first style
  • Поддержка EUnit: запуск тестов из редактора, перезапуск упавших тестов
  • Улучшено автодополнение для аттрибутов, функций и модулей
  • Улучшена сборка проекта: debug_info, parse_transforms, behaviours, сборка с помощью Rebar
  • Дебаггер (experimental)
  • И многое другое

Читать полностью »