<html><head></head><body><div style="color:#000; background-color:#fff; font-family:HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, Sans-Serif;font-size:10px"><font size="3">Вы отвечаете, в одном письме на разные письма. :-)</font><br> <div class="qtdSeparateBR"><br><br></div><div style="display: block;" class="yahoo_quoted"> <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 face="Arial" size="2"> On Wednesday, 27 April 2016, 14:48, Alexander Q <qalexx@gmail.com> wrote:<br></font></div>  <br><br> <div class="y_msg_container"><div id="yiv9421531956"><div><div dir="ltr"><div>> Хотел лишь пример бизнес логики без IO...</div><div>Я, к сожалению, использую хаскель только в хобби-проектах. В целом забор помогает отделить не-IO-логику от IO.</div><div>Типичная задача выглядит как</div><div>1. взять данные (IO)</div><div>2. сделать что-то с данными (pure)</div><div>3. положить данные, или вывести их на экран (IO)</div><div><br clear="none"></div><div>Пункты 1 и 3 можно упростить до readFile и putStrLn. Это дебажить довольно просто. Всё остальное можно сделать не используя IO, за счёт чего гораздо проще будет понимать, как это работает.</div><div><br clear="none"></div><div>Это касается не только IO. Например, если функция в типе не объявила, что зависит от глобального состояния — то она не зависит от него, и я могу не беспокоиться что какая-нибудь другая функция поломает поведение моей. Это крайне удобно, к этому быстро привыкаешь и страдаешь без таких удобств.</div><div><br clear="none"></div>> Разницу между mission critiacal и utility софтом вы понимаете?<br clear="none">Объясните мне.</div><br clear="none"><div class="yiv9421531956gmail_quote"><div class="yiv9421531956yqt9311605580" id="yiv9421531956yqtfd25541"><div dir="ltr">On Wed, Apr 27, 2016 at 2:42 PM Alex Chistyakov <<a rel="nofollow" shape="rect" ymailto="mailto:alexclear@gmail.com" target="_blank" href="mailto:alexclear@gmail.com">alexclear@gmail.com</a>> wrote:<br clear="none"></div><blockquote class="yiv9421531956gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div dir="ltr"><div><div>Да, что касается телекома, транслятор MML для АТСЦ-90 написан на C++ под QNX<br clear="none"></div>Синхронизатор SS7-канала для <другого телеком-продукта> написан на C++ под Win CE (ну и говно эта ваша Visual Studio 6 Embedded!)<br clear="none"></div>И никому в здравом уме не пришло бы в голову писать их на COBOL<br clear="none"></div><div class="yiv9421531956gmail_extra"><br clear="none"><div class="yiv9421531956gmail_quote">2016-04-27 14:31 GMT+03:00 Alex Chistyakov <span dir="ltr"><<a rel="nofollow" shape="rect" ymailto="mailto:alexclear@gmail.com" target="_blank" href="mailto:alexclear@gmail.com">alexclear@gmail.com</a>></span>:<br clear="none"><blockquote class="yiv9421531956gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div dir="ltr"><br clear="none"><div class="yiv9421531956gmail_extra"><br clear="none"><div class="yiv9421531956gmail_quote"><div><div>2016-04-27 14:25 GMT+03:00 Andrey Kovbovich <span dir="ltr"><<a rel="nofollow" shape="rect" ymailto="mailto:akovbovich@gmail.com" target="_blank" href="mailto:akovbovich@gmail.com">akovbovich@gmail.com</a>></span>:<br clear="none"><blockquote class="yiv9421531956gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div dir="ltr"><div class="yiv9421531956gmail_extra"><br clear="none"><div class="yiv9421531956gmail_quote">27 апреля 2016 г., 14:15 пользователь Alex Chistyakov <span dir="ltr"><<a rel="nofollow" shape="rect" ymailto="mailto:alexclear@gmail.com" target="_blank" href="mailto:alexclear@gmail.com">alexclear@gmail.com</a>></span> написал:<span><br clear="none"></span><blockquote class="yiv9421531956gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">Кому, и правда, может прийти в голову предпочесть функциональный язык без сайд-эффектов говноподелию из 60-х.</blockquote></div><br clear="none">Вас дезинформировали. Из второй половины 50ых)</div></div></blockquote><div><br clear="none"></div></div></div><div>Картинка с пустым стадионом и подписью "look, all these people care!" dot jpg<br clear="none"></div><div>Нет, правда, я за свою жизнь писателя дорвеев, дейтингов и ORM на пыхе достаточно отколбасил на энтерпрайз, чтобы утверждения про промышленный стандарт и хороший рантайм кобола не покупать<br clear="none"></div><div>Любой язык можно обвешать линтерами, статическими анализаторами, тестами и большой командой QAE<br clear="none"></div><div>Будет почти как у взрослых, но за очень большие деньги<br clear="none"></div><div>И все равно никаких гарантий не будет<br clear="none"></div><span></span><div><br clear="none"> </div><blockquote class="yiv9421531956gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<br clear="none">--<br clear="none">
Moscow.pm mailing list<br clear="none">
<a rel="nofollow" shape="rect" ymailto="mailto:moscow-pm@pm.org" target="_blank" href="mailto:moscow-pm@pm.org">moscow-pm@pm.org</a> | <a rel="nofollow" shape="rect" target="_blank" href="http://moscow.pm.org/">http://moscow.pm.org</a><br clear="none">
<br clear="none"></blockquote></div><br clear="none"></div></div>
</blockquote></div><br clear="none"></div>
--<br clear="none">
Moscow.pm mailing list<br clear="none">
<a rel="nofollow" shape="rect" ymailto="mailto:moscow-pm@pm.org" target="_blank" href="mailto:moscow-pm@pm.org">moscow-pm@pm.org</a> | <a rel="nofollow" shape="rect" target="_blank" href="http://moscow.pm.org/">http://moscow.pm.org</a><br clear="none">
</blockquote></div></div><div class="yiv9421531956yqt9311605580" id="yiv9421531956yqtfd92672">
</div></div></div><br><div class="yqt9311605580" id="yqtfd11053">-- <br clear="none">Moscow.pm mailing list<br clear="none"><a shape="rect" ymailto="mailto:moscow-pm@pm.org" href="mailto:moscow-pm@pm.org">moscow-pm@pm.org</a> | <a shape="rect" href="http://moscow.pm.org/" target="_blank">http://moscow.pm.org</a><br clear="none"></div><br><br></div>  </div> </div>  </div></div></body></html>