Как стать автором
Обновить
24
0

Пользователь

Отправить сообщение
возможность делать i=i+1 подразумевает наличие изменяемой памяти, чего в Эрланге пытались избежать всю историю его создания(с 89го года).

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

а в математике в операторе сумма или произведение ничего не изменяется в контексте блока по которому итерируемся — значение i всегда одинаково во всей формуле.
вот она важная деталь:

> Каждый процесс изолирован и не имеет доступа к памяти других процессов
> если нет общей памяти то нет проблемы с доступом к этой памяти

процесс — читайте трэд или нить.

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

вы считаете многопоточное программирование в императивной парадигме интуитивно понятным и простым?

отсутствие технических деталей обьясняеться легко. просто прочитайте топик еще раз. первые 10 слов…
конечно, с создателем языка не посоревнуешся. может это и плохо но я решил не писать много а лишь в общих чертах описать возможности языка…
есть еще erlide.sourceforge.net но о средствах разработки будет отдельный топик
да везде их можно реализовать, топик то не об этом ;)
собственно говоря архитектура и возможности Erlang/OTP вас никак не ограничивают в этом, существуют успешные клиентские программы которые даже конкуррентности там не используют, но странен сам факт выбора этого ЯП для таких целей
просто эрланг так не работает… эрланг это виртуальная машина и каждое эрланг-приложение может использовать одну или больше виртуальных машин в зависимости от аппаратного окружения. зачем же изолировать приложение в один узел? или наоборот — зачем изолировать целый узел лишь для одного приложения?
собственно и у меня опыта не очень много: дипломный проект + делаю эмулятор сервера ворлд оф варкрафт. итого по времени чуть больше года. но язык я считаю очень перспективным и интересным и уж точно достойным обсуждения на хабре.
Scheme посмотрю. Собственно Erlang начал учить после выхода знаменитой книги Армстронга именно из-за его конкурентности, но это был и первый успешный опыт с функциональностью чем я очень доволен(до Erlang'а пробовал освоить Haskell — терпения не хватило :)).

В остальном(OTP, fault-tolerance, смена кода) — согласен, но такие темы нужно поднимать после освещения всей функциональности языка, без чего добиться успехов в конкуррентности было бы трудно.

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

насчет почему эрланг лучший для знакомства с ФП — чисто субьективная точка зрения. вкратце — у эрланга синтаксис попроще хаскела.
извините, русский не учил, вижу что в плюса еще не скоро влезу но спасибо за подсказку, исправлюсь
12 ...
7

Информация

В рейтинге
Не участвует
Откуда
Hamburg, Hamburg, Германия
Дата рождения
Зарегистрирован
Активность