<div dir="ltr">В этой книжке прикольные картинки, если чо.<br></div><div class="gmail_extra"><br><div class="gmail_quote">27 апреля 2016 г., 13:32 пользователь Alexander Q <span dir="ltr"><<a href="mailto:qalexx@gmail.com" target="_blank">qalexx@gmail.com</a>></span> написал:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Почитать посоветую Learning Haskell for great good, экземпляр русского перевода могу дать почитать, в районе метро Аэропорт.</div><div class="HOEnZb"><div class="h5"><br><div class="gmail_quote"><div dir="ltr">On Wed, Apr 27, 2016 at 1:30 PM Alexander Q <<a href="mailto:qalexx@gmail.com" target="_blank">qalexx@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">> <span style="color:rgb(0,0,0);font-family:HelveticaNeue,'Helvetica Neue',Helvetica,Arial,'Lucida Grande',sans-serif;font-size:medium;line-height:24px">Какой снобизм? Просто непонимание, почему, если без unsafePerformIO никуда, говорят о чистоте.</span><br style="color:rgb(0,0,0);font-family:HelveticaNeue,'Helvetica Neue',Helvetica,Arial,'Lucida Grande',sans-serif;font-size:medium;line-height:24px"><div><span style="color:rgb(0,0,0);font-family:HelveticaNeue,'Helvetica Neue',Helvetica,Arial,'Lucida Grande',sans-serif;font-size:medium;line-height:24px"><br></span></div></div><div dir="ltr"><div><span style="color:rgb(0,0,0);font-family:HelveticaNeue,'Helvetica Neue',Helvetica,Arial,'Lucida Grande',sans-serif;font-size:medium;line-height:24px">А кто сказал, что "никуда"? Я дал кусок кода, который берёт чистую функцию для вычисления md5 и выдаёт IO MD5. И ни одного unsafe, ваще ни одного, в моём коде нет. Конечно, мой код основывается на определённых предположениях, от "эта библиотека работает как заявлено" и до "в этом процессоре нету ошибок", но это всегда так, правда?</span></div><div><span style="color:rgb(0,0,0);font-family:HelveticaNeue,'Helvetica Neue',Helvetica,Arial,'Lucida Grande',sans-serif;font-size:medium;line-height:24px"><br></span></div><div><span style="color:rgb(0,0,0);font-family:HelveticaNeue,'Helvetica Neue',Helvetica,Arial,'Lucida Grande',sans-serif;font-size:medium;line-height:24px">До уровня написания библиотек типа bytestring вам значительно дальше, чем до понимания как их использовать. Для вас это чёрный ящик, который работает. </span><span style="color:rgb(0,0,0);font-family:HelveticaNeue,'Helvetica Neue',Helvetica,Arial,'Lucida Grande',sans-serif;font-size:medium;line-height:24px">Но если это действительно так важно для вас, то пусть readFile будет String -> IO String, md5 будет String -> String, и тогда</span></div><div><font color="#000000" size="3" face="HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif"><span style="line-height:24px"><br></span></font></div><div><font color="#000000" size="3" face="HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif"><span style="line-height:24px">md5io :: String -> IO String</span></font></div><div><font color="#000000" size="3" face="HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif"><span style="line-height:24px">md5io = fmap md5 . readFile</span></font></div><div><span style="color:rgb(0,0,0);font-family:HelveticaNeue,'Helvetica Neue',Helvetica,Arial,'Lucida Grande',sans-serif;font-size:medium;line-height:24px"><br></span></div><div><span style="color:rgb(0,0,0);font-family:HelveticaNeue,'Helvetica Neue',Helvetica,Arial,'Lucida Grande',sans-serif;font-size:medium;line-height:24px">IO — монада, в которую могут прилетать exceptions. Это нормально для монады, для которой есть инстанс MonadThrow. Это не делает монаду менее pure.</span><br></div><div><span style="color:rgb(0,0,0);font-family:HelveticaNeue,'Helvetica Neue',Helvetica,Arial,'Lucida Grande',sans-serif;font-size:medium;line-height:24px"><br></span></div><div><span style="color:rgb(0,0,0);font-family:HelveticaNeue,'Helvetica Neue',Helvetica,Arial,'Lucida Grande',sans-serif;font-size:medium;line-height:24px">Вы задаёте много вопросов, на каждый из которых есть ответ, и эти ответы занимают здесь довольно много места. Давайте вы мне будете писать лично, а когда найдёте нормальную зацепку для доказательства, что Haskell вообще не то и go гораздо лучше — тогда уже в список рассылки.</span></div></div><br><div class="gmail_quote"><div dir="ltr">On Wed, Apr 27, 2016 at 1:18 PM Alex Chistyakov <<a href="mailto:alexclear@gmail.com" target="_blank">alexclear@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">2016-04-27 13:09 GMT+03:00 Andrey Kovbovich <span dir="ltr"><<a href="mailto:akovbovich@gmail.com" target="_blank">akovbovich@gmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><p dir="ltr">В телекоме и банкинге Haskell может быть только если переименовали COBOL.</p></blockquote></div></div></div><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div>Работал в телекоме еще 17 лет назад, никакого "COBOL" не видал даже близко.<br></div><div>QNX, C++, Windows CE, Sun SPARCs, Java, CORBA и прочие радости жизни.<br>В R&D Дойчебанка про COBOL слышали только отдаленно - сплошная Java и Java поверх Java.<br></div><div>Но вы продолжайте верить в единорогов.<br></div></div></div></div><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div><br><br> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div class="gmail_quote">27 апр. 2016 г. 11:51 пользователь "ksvs" <<a href="mailto:ksvs1996@ymail.com" target="_blank">ksvs1996@ymail.com</a>> написал:<div><div><br type="attribution"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div><div style="color:rgb(0,0,0);background-color:rgb(255,255,255);font-family:HelveticaNeue,Helvetica Neue,Helvetica,Arial,Lucida Grande,sans-serif;font-size:10px"><font size="3">Спасибо за ссылку.<br>А ответы на ваши вопросы, который на мои вопросы - я ответов не знаю.<br></font><div><span></span></div> <div><br><br></div><div style="display:block"> <div style="font-family:HelveticaNeue,Helvetica Neue,Helvetica,Arial,Lucida Grande,sans-serif;font-size:10px"> <div style="font-family:HelveticaNeue,Helvetica Neue,Helvetica,Arial,Lucida Grande,sans-serif;font-size:16px"> <div dir="ltr"><font size="2" face="Arial"> On Wednesday, 27 April 2016, 11:43, Alex Chistyakov <<a href="mailto:alexclear@gmail.com" target="_blank">alexclear@gmail.com</a>> wrote:<br></font></div> <br><br> <div><div><div><div dir="ltr"><br clear="none"><div><br clear="none"><div>2016-04-27 9:44 GMT+03:00 ksvs <span dir="ltr"><<a rel="nofollow" shape="rect">ksvs1996@ymail.com</a>></span>:<br clear="none"><blockquote style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div><div style="color:rgb(0,0,0);background-color:rgb(255,255,255);font-family:HelveticaNeue,Helvetica Neue,Helvetica,Arial,Lucida Grande,sans-serif;font-size:10px"><div><span></span></div> <div><div><br clear="none"></div><div dir="ltr"><font size="3">"Телеком, банкинг и HFT" и "Отделять IO от чистых функций очень"?<br clear="none"><br clear="none">1) банкинг - как?<br clear="none">Или из базы сразу поднимается вся история клиента и в чистой функции работают алагоритмы по решению давать ли кредит?<br clear="none"></font></div></div></div></div></blockquote><div><br clear="none"></div><div>Откуда ж я-то знаю?<br clear="none"></div><div>Я вообще на PHP дорвеи и дейтинги пишу в рамках ежедневной работы.<br clear="none"></div><div><br clear="none"> </div><blockquote style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div><div style="color:rgb(0,0,0);background-color:rgb(255,255,255);font-family:HelveticaNeue,Helvetica Neue,Helvetica,Arial,Lucida Grande,sans-serif;font-size:10px"><div><div dir="ltr"><font size="3"><br clear="none">2) HFT - тут haskell? А разве там на kdb?</font></div></div></div></div></blockquote><div><br clear="none"></div><div>Ни разу не слышал, чтобы там применяли kdb.<br clear="none"></div><div>Зачем?<br clear="none"></div><div>Свободных IMDG нет, что ли?<br clear="none"></div><div><br clear="none"><br clear="none"> </div><blockquote style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div><div style="color:rgb(0,0,0);background-color:rgb(255,255,255);font-family:HelveticaNeue,Helvetica Neue,Helvetica,Arial,Lucida Grande,sans-serif;font-size:10px"><div><div dir="ltr"><font size="3"> Там ведь базу в памяти и векторный оапрации?<br clear="none"><br clear="none">3) Телеком - а что там? разве там не работа с IO.<br clear="none"></font></div></div></div></div></blockquote><div><br clear="none"></div><div>И?<br clear="none"></div><div>Очевидно, данные откуда-то поступают, так что работа с IO везде.<br clear="none"></div><div><br clear="none"> </div><blockquote style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div><div style="color:rgb(0,0,0);background-color:rgb(255,255,255);font-family:HelveticaNeue,Helvetica Neue,Helvetica,Arial,Lucida Grande,sans-serif;font-size:10px"><div><div dir="ltr"><font size="3"><br clear="none">Базе IO сложные алгоритмы и типы так на ум проходят системы логики, доказательства. Но там кажется SML и Ocaml.<br clear="none"><br clear="none">Или тут на Hаskell пишут EDSL и уже генерируют код?<br clear="none"></font></div></div></div></div></blockquote><div><br clear="none"></div><div>Например.<br clear="none"></div><div><br clear="none"> </div><blockquote style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div><div style="color:rgb(0,0,0);background-color:rgb(255,255,255);font-family:HelveticaNeue,Helvetica Neue,Helvetica,Arial,Lucida Grande,sans-serif;font-size:10px"><div><div dir="ltr"><font size="3"><br clear="none">Интересно. А то тут же Зефиров столько про Haskell рассказывал, а сам сейчас на C# пишет.<br clear="none"><br clear="none">P.S.<br clear="none">Самому Haskell нравиться, но как-то все у меня в IO...<br clear="none"><br clear="none"><br clear="none">Кстати, гугл сказал, что раньше dmz использовал Ocaml.<br clear="none">Спросите, его, почему перешел на Haskell?<br clear="none"></font></div></div></div></div></blockquote><div><br clear="none"></div><div>Вот что он сам говорит об этом: <a rel="nofollow" shape="rect">https://www.facebook.com/alexclear/posts/10206939303546236?comment_id=10206939725356781</a><div><br clear="none"></div></div><div><div><br clear="none"> </div></div><blockquote style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div><div style="color:rgb(0,0,0);background-color:rgb(255,255,255);font-family:HelveticaNeue,Helvetica Neue,Helvetica,Arial,Lucida Grande,sans-serif;font-size:10px"><div><div><div dir="ltr"><font size="3">Вдруг из-за IO! У GHC > 7.8 очень классная многопоточность и быстрый IO.<br clear="none"></font></div><div dir="ltr"><br clear="none"></div><div dir="ltr"><br clear="none"></div></div><span></span></div><div style="display:block"><div> </div><div style="font-family:HelveticaNeue,Helvetica Neue,Helvetica,Arial,Lucida Grande,sans-serif;font-size:10px"><div> </div><div style="font-family:HelveticaNeue,Helvetica Neue,Helvetica,Arial,Lucida Grande,sans-serif;font-size:16px"><div> <div dir="ltr"><font size="2" face="Arial"> On Tuesday, 26 April 2016, 17:48, Alex Chistyakov <<a rel="nofollow" shape="rect">alexclear@gmail.com</a>> wrote:<br clear="none"></font></div> <br clear="none"></div><div><div><div><div dir="ltr"><div><br clear="none"></div><div><div><br clear="none"></div><div><div>2016-04-26 17:06 GMT+03:00 Daniel Podolsky <span dir="ltr"><<a rel="nofollow" shape="rect">onokonem@gmail.com</a>></span>:<br clear="none"><blockquote style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><span>> Хаскель в частности и функциональные типизированные языки в общем привносят<br clear="none">
> довольно много концепций, которые недоступны медианному програмисту на go.<br clear="none">
</span>на этом месте я подумал - "а вдруг я чего-то не знаю про хаскель"<br clear="none">
<br clear="none">
скажите, какие есть у нас проекты крупные и популярные на хаскеле?<br clear="none"></blockquote><div><br clear="none"></div><div>Популярные среди кого?<br clear="none"></div><div>У нас есть коллега dmz, который тренирует людей себе в команду и делает крупные и популярные проекты.<br clear="none"></div><div>Телеком, банкинг, другие большие лавки.<br clear="none"></div></div><div><div>Кто-то HFT на Haskell делает.</div><br clear="none"></div><br clear="none"></div></div></div></div></div><br clear="none"></div> </div> </div> </div></div></div><br clear="none">--<br clear="none">
Moscow.pm mailing list<br clear="none">
<a rel="nofollow" shape="rect">moscow-pm@pm.org</a> | <a rel="nofollow" shape="rect">http://moscow.pm.org</a><div><br clear="none">
<br clear="none"></div></blockquote></div><div><br clear="none"></div></div></div><div>
</div></div></div><br>-- <br clear="none">Moscow.pm mailing list<br clear="none"><a shape="rect">moscow-pm@pm.org</a> | <a shape="rect">http://moscow.pm.org</a><div><br clear="none"></div><br><br></div> </div> </div> </div></div></div><br>--<br>
Moscow.pm mailing list<br>
<a href="mailto:moscow-pm@pm.org" target="_blank">moscow-pm@pm.org</a> | <a href="http://moscow.pm.org" target="_blank">http://moscow.pm.org</a><br>
<br></blockquote></div></div></div>
<br>--<br>
Moscow.pm mailing list<br>
<a href="mailto:moscow-pm@pm.org" target="_blank">moscow-pm@pm.org</a> | <a href="http://moscow.pm.org" rel="noreferrer" target="_blank">http://moscow.pm.org</a><br>
<br></blockquote></div></div></div>
--<br>
Moscow.pm mailing list<br>
<a href="mailto:moscow-pm@pm.org" target="_blank">moscow-pm@pm.org</a> | <a href="http://moscow.pm.org" rel="noreferrer" target="_blank">http://moscow.pm.org</a><br>
</blockquote></div></blockquote></div>
</div></div><br>--<br>
Moscow.pm mailing list<br>
<a href="mailto:moscow-pm@pm.org">moscow-pm@pm.org</a> | <a href="http://moscow.pm.org" rel="noreferrer" target="_blank">http://moscow.pm.org</a><br>
<br></blockquote></div><br></div>