> 1 <

Автор Сообщение

usrleon

Members


Статус

1 сообщений

Где: Russia
Род занятий:
Возраст:

#2651   2010-07-10 18:29 GMT+3 часа(ов)      
Начал параллельно изучать оба языка и мне интересно в чем их преимущества друг перед другом, очевидную эрланговую устойчивость к нагрузкам не берем поскольку это на любом сайте написано сразу после слова "erlang". В общем что может lisp чего не может erlang и наоборот?

LinkFly

Members


Статус

152 сообщений

Где: Russia
Род занятий:
Возраст:

#2652   2010-07-11 15:52 GMT+3 часа(ов)      
erlang будет пытаться выиграть у Лиспа за счёт конструктивных особенностей ориентированных на многопоточную работу.
Лиспу побьёт erlang по декларативности описания любых вычислений, за счёт макросов.

gihar

Moderators


Статус

249 сообщений

Где: --- да вот он я? приехал уже из Катманду
Род занятий: конкретный
Возраст: 0

#7150   2013-11-01 03:57 GMT+3 часа(ов)      
понимаю что тема уже давно в морге, но приглашаю о том или о сем поговорить. ))

Ерланг не изучал и не видел кода никогда, но все таки может кто-нибудь знает какой тип данных у него ключевой, например, в Лиспе это список?

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

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

rv82

Members


Статус

46 сообщений
http://rv82.ya.ru
Где: Russia
Род занятий:
Возраст:

#7312   2014-03-12 11:10 GMT+3 часа(ов)      
Цитата
gihar :
Ерланг не изучал и не видел кода никогда, но все таки может кто-нибудь знает какой тип данных у него ключевой, например, в Лиспе это список?

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

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


Когда-то баловался с Эрлангом. Насколько помню, ключевого типа данных там нет. Есть числа, строки, символы, атомы, списки (как и в лиспе, состоят из головы и хвоста) и т.д. Все они равноправные. Программа - это не рекурсивный список. Скорее, она похожа на программы в других языках программирования, т.е. просто текст.

Многопоточность в Эрланге лучше назвать многопроцессностью, хотя процессы все лёгкие. Процессы обмениваются друг с другом только сообщениями. Никаких разделяемых и блокируемых данных нет. Например, процесс А должен получить от другого процесса какие-то данные. Он входит в режим ожидания и ждёт прихода сообщений. Если никто ему ничего не пришлёт, он так и останется ждать, либо пойдёт выполняться дальше, если был установлен таймер на ожидание. Процесс Б может послать процессу А сообщение. При этом, он ничего ожидать не будет, и его даже не интересует, получил ли процесс А его сообщение (если конечно это не было специально прописано). Вот и вся многозадачность. При этом процессы никак не могут заблокировать друг друга. Можно конечно специально предусмотреть, чтобы произошла взаимная блокировка, но для этого надо постараться. А кому это надо?

А ещё, вся прелесть системы Эрланг состоит в том, что в её составе имеются средства для передачи сообщений по сети. Причём, запускаются эти средства прозрачно - незаметно для пользователя (Java EE отдыхает). Только, всё это хозяйство мало пригодно для написания настольных приложений (это на мой взгляд, хотя может я и неправ).

отредактировал(а) rv82: 2014-03-12 12:17 GMT+3 часа(ов)
> 1 <


Онлайн :

0 пользователь(ей), 15 гость(ей) :




Реклама на сайте: