Re[27]: Сложный язык для сложных срограмм.
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 08.02.07 21:36
Оценка: +1 -7 :))
Здравствуйте, BulatZiganshin, Вы писали:

<...поскипано...>

BZ>ну и наконец — на хаскел с его строжайшей типизацией, развитой системой типов и лёгкостью описания сложных алгоритмов. то есть nemn и надёжность (которую со временем начинаешь ценить всё больше), и выразительность


<...поскипано...>

BZ>а теперь посмотрите как записывается многопоточная программа на хаскеле:


BZ>
BZ>-- Thread, который в цикле читает команды из потока и исполняет их
BZ>graphThread c = do cmd <- getChan c
BZ>                   cmd
BZ>                   graphThread c

BZ>-- Создаёт graphThread и посылает ему команды на исполнение
BZ>main = do с <- newChan
BZ>          forkOS $ graphThread c
BZ>          putChan c (print "Hi")
BZ>          tid <- forkOS $ putChan c (print "Hi from other thread")
BZ>          putChan c (print "Bye")
BZ>          waitThread tid
BZ>


BZ>а теперь скажите, что легче — написать рекурсивную программу на фортране, или многопоточную, с автоматичсекой синхронизацией и разделением ресурсов — на хаскеле? и стоит ли хаскелловскому порграммисту указывать умение писать такие порграммы как отдельный скилл?


<...поскипано...>

Вы меня, конечно, извините, но в ваших словах мне так и слышится бравада: "Я освоил Хаскел! Я проперся от него! Я познал неведомое доселе!". И вспоминается мне один очень талантливый мужик, фанат Пролога, который несколько лет назад написал на Прологе офигенную систему. В которой никто не мог разобраться кроме него. Более того, когда однажды потребовалось выяснить причину ее странного поведения в какой-то ситуации, на вопрос "А как она вообще работает" он ответил -- "А хрен его знает". И закончилось все, как и можно было ожидать, тем, что после его ухода все творение было в довольно короткий срок переписано на C++ парой вчерашних студентов. И работало затем несколько лет без нареканий. Причем те студенты сейчас ведут еще более серьезные проекты и слова Хаскел, я думаю, даже не слышали.

И так бывает, однако.


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.