LINUX.ORG.RU

[Erlang] С чего начать изучение

 


1

2

С чего начать изучение Erlang? Книги, туториалы, документация.

Как вы изучали этот язык? Расскажите своё впечатление от использования, чем он лучше/хуже других известным вам языков?

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

Спасибо.

С чего начать изучение X?

С освоения функции поиска по форуму.

mopsene ★★★
()
Ответ на: комментарий от ConnorMcLaud

Ты на дату смотрел? Динамические опердени уже как год устарели.

aedeph
()
Ответ на: комментарий от anonymous

Ну и в erlang@conference.jabber.ru с вопросами или гуглогруппу.

anonymous
()

> С чего начать изучение Erlang? Книги

ISBN: 193435600X ISBN: 0596518188 ISBN: 1933988789

Через пару месяцев начнётся работа по портированию проекта с С на Erlang

Сочувствую.

для лучшей масштабируемости

Еще раз сочувствую.

LamerOk ★★★★★
()
Ответ на: комментарий от LamerOk

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

anonymous
()
Ответ на: комментарий от ConnorMcLaud

странно что ты с выучил
заходишь на любимый трекер вводишь в поле поиска erlang и wai oh shi~

trashymichael ★★★
()

А как масштабируемость к языку привязана? Это всё больше от архитектуры программы зависит.

mv ★★★★★
()

И да, если предпочитаешь видео, то

на ютубе есть лекция Армстронга

Lecture by Joe Armstrong part 1 (High).flv (частей 10)

есть вводная лекция по эрлангу:

Flourish 09 - Erlang workshop - Martin Logan - Part 1 (HD) (частей 5)

еще Лионет делал доклад, есть слайды с синхронизованным аудио:

http://www.slideshare.net/j2a/ss-4625844

stevejobs ★★★★☆
()
Ответ на: комментарий от mv

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

могу привести антипример в Жаве: когда исключение вылетает на уровне сервера, падает всё приложение. Причем падает не просто, а прямо от души: всё сразу, и не мгновенно, а в течение значительного времени. Восстановиться от ошибок простым образом никак нельзя. Вебсфера иногда стартует по 40 минут, так что можешь оценить масштаб радости от ее перезапуска. Конечно, можно накрутить продуманную систему костылей на основе OSGi, но потом за нее придется платить другими видами нервотрепки. В эрланге такой проблемы нет.

stevejobs ★★★★☆
()
Ответ на: комментарий от stevejobs

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

Прочитал две книжки, лёжа на пляжу. OTP и отсутствие переменных - вот и всё, что там есть.

mv ★★★★★
()
Ответ на: комментарий от stevejobs

>В эрланге такой проблемы нет.

Зато есть другие проблему. Причем по началу их не знаешь и не замечаешь. Все нравится. Потом выясняется, что со строками беда, с XML беда, но это еще куда не шло. Самое классное, когда добираешься до нормальных приложений на основе OTP и тут вообще праздник. Если где-то допустил ошибку и оно не стартует, то найти ошибку по выхлопу целая мегазадача. Это все конечно раздражает.

Но в целом Erlang классный. Его обязательно надо изучать, т.к. в нем все наглядно красиво сделано и сообщения и чистая функциональность (если во внутрь не лезть, а также не пользовать ets и подобное). Все это потом можно применить в других языках, хотя не так изящно.

Переписывать проект с C на Erlang очень сомнительная задача. На C можно тоже все масштабировать. Посмотрите в сторону ZeroMQ + Protocol Buffers или подобное. Просто если писать с нуля это одно, но переносить на Erlang - это другое. Тем более, что сделать шустрым сперва это не получится, т.к. чистая функциональность требует особого мышления. У меня нет уверенности, что в принципе позволяет создавать быстрые решения для некоторых типов задач.

Даже в фирменных решениях Ericsson там где использовался Erlang - очень многое было на C. Erlang - это скорее классный «клей» для разных модулей.

olegk ★★
()
Ответ на: комментарий от stevejobs

В эрланге такой проблемы нет.

В Эрланге виртуальная машина, бывает, падает. Со всеми запущенными стопицот процессами. Лев Валкин об этом, кстати, писал. Ещё он куски на Си переписывает, потому что Эрланг хоть и даёт дешёвое масштабирование, но оверхед слишком большой получается.

mv ★★★★★
()
Ответ на: комментарий от mv

Там есть в первую очередь своебразная ВМ.

anonymous
()
Ответ на: комментарий от mv

> В Эрланге виртуальная машина, бывает, падает. Со всеми запущенными стопицот процессами.

...и это фича!!!1

tailgunner ★★★★★
()
Ответ на: комментарий от olegk

Все это потом можно применить в других языках, хотя не так изящно.
Erlang - это скорее классный «клей» для разных модулей.

интересно, может стоит попробовать написать обертку вокруг OSGi для быстрого говнокодинга в стиле Эрланга ) Время от времени OSGi будет падать с каким-нибудь out of memory, ну да и у Эрланга виртуалочка тоже падает

stevejobs ★★★★☆
()
Ответ на: комментарий от mv

по крону проверять, упала ли виртуалочка, и по-быстрому перезапускать. Или даже не по крону, а написать для этого гипер-гипер-визор на том же эрланге ;)

stevejobs ★★★★☆
()
Ответ на: комментарий от stevejobs

Ничего никуда не падает. Если падает это баг, которые фиксятся и которые бывают везде или OOM.

anonymous
()
Ответ на: комментарий от stevejobs

Найди. Ты так говоришьь, что это его нормальное состоянии.

Только потом готовься получить ссылки на баги jvm/gcc/etc.

anonymous
()
Ответ на: комментарий от mv

ага, а еще у него много кода на OCaml по тем же причинам.

beka
()

[x] Не нужен

Чтобы его выучить, надо сначала придумать, зачем он нужен. Какбы, много лет пытаюсь ему дома найти применение, и так и не нашёл. Моя фирма тоже в фейсбук играть не пытается, поэтому как-то обходится бе ВЫСОКИХ НАГРУЗОК, у каждых клиентов свой сервак, и всё масштабируется старым добрым UNIX-способом. Так что уж фиг знает, зачем он нормальному человеку нужен.

vasilenko ★★
()
Ответ на: комментарий от stevejobs

когда исключение вылетает на уровне сервера, падает всё приложение.
Вебсфера

Во-первых ССЗБ за вебсферу. Во-вторых так что угодно может упасть.

dizza ★★★★★
()

Как вы изучали этот язык?

Писал вьюхи для couchdb.

Расскажите своё впечатление от использования

Пушной зверек, привет из 80x, через жопу, таплы, таплы, таплы, КОКОКО, КОКОКО.

Через пару месяцев начнётся работа по портированию проекта с С на Erlang

У вас длинный деревянный нос и недобрый взгляд.

baverman ★★★
()
Ответ на: комментарий от anonymous

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

baverman ★★★
()
Ответ на: комментарий от anonymous

Конечно, отсутствие какого-либо сахара, все эти proplists, <<«My sexy utf-8 string»>>, переменные с большой буквы, портянки трейсов, которые надо по пол часа разглядывать, чтобы уловить хоть какой-нибудь намек, где ошибка в коде. Все это от большого ума? OTP делали ремесленники для решения каких своих конкретных задач, говорить о каком-то general purpose применении эрланга могут только оголтелые фанатики, похуже лисперов.

baverman ★★★
()
Ответ на: комментарий от stevejobs

> В эрланге такой проблемы нет.

Скажи это пользователям ежабберда, который крешится из-за мнезии на отличненько.

anonymous
()
Ответ на: комментарий от anonymous

> А что-то кроме вьюх ты писал, а?

А разве на что-то другое ваш кококо-Эрланг годится?

anonymous
()
Ответ на: комментарий от baverman

> У вас длинный деревянный нос

...который, как мне кажется, после написания ОП-поста немножечко вырос

anonymous
()
Ответ на: комментарий от beka

> Неделя erlanga на лоре.

прирост опердений увеличился вдвое

korvin_ ★★★★★
()
Ответ на: комментарий от stevejobs

Ну так Лев и писал что достаточно ее в цикле перезапускать

Vernat ★★
()
Ответ на: комментарий от mv

наверное скорее к реализации виртуальной машины, а?

Vernat ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.