metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2011-10-13 03:49 pm
Entry tags:

Haskell, IO и трансформеры монад

Пишу на хаскеле прогу, которая использует пакет ConfigFile.
Оный пакет в результате парсинга файла конфига выдает хитрожопую комбинацию монад ErrorT CPError IO ConfigParser
В итоге все это вырождается в кошмарные конструкции типа http://hpaste.org/52572
Вот у людей такая же проблема http://stackoverflow.com/questions/2216164/haskells-liftios-litter-functions-of-type-errort-string-io

С ходу не соображу, как бы это покрасивее сделать. Выкинуть что ле ErrorT и использовать только исключения, все равно они там используются при работе с ком-портом.

Закономерный итог

[identity profile] plumqqz.livejournal.com 2011-10-13 01:01 pm (UTC)(link)
Не жалеете вы там себя. Не бережете.

Re: Закономерный итог

[identity profile] metaclass.livejournal.com 2011-10-13 01:24 pm (UTC)(link)
Так кризис же. Альтернатива - ежеутренне заниматься мастурбацией на курс доллара)

[identity profile] gds.livejournal.com 2011-10-13 01:27 pm (UTC)(link)
хехе, это только начало. Рекомендую привыкать потихоньку. А разгадка одна: монадные трансформеры.

Re: Закономерный итог

[identity profile] plumqqz.livejournal.com 2011-10-13 01:31 pm (UTC)(link)
А как же... ДУХОВНОСТЬ?!!

Re: Закономерный итог

[identity profile] metaclass.livejournal.com 2011-10-13 01:39 pm (UTC)(link)
Ну, вот хаскель и есть духовность :)

Re: Закономерный итог

[identity profile] yantayga.livejournal.com 2011-10-13 01:42 pm (UTC)(link)
Хаскель - это не духовность. Хаскель - это схоластическая философия. А духовность - это C.

Re: Закономерный итог

[identity profile] nealar.livejournal.com 2011-10-13 01:52 pm (UTC)(link)
Цэ - это астрология и херомантия.

Re: Закономерный итог

[identity profile] plumqqz.livejournal.com 2011-10-13 01:53 pm (UTC)(link)
Это симулякр духовности :-)

Re: Закономерный итог

[identity profile] http://users.livejournal.com/_slw/ 2011-10-13 02:11 pm (UTC)(link)
симулякр === монада?

Re: Закономерный итог

[identity profile] plumqqz.livejournal.com 2011-10-13 02:15 pm (UTC)(link)
Монадо у каждого своя.

[identity profile] eternal-leave.livejournal.com 2011-10-13 02:16 pm (UTC)(link)
Звучит как название трэшового sci-fi рассказа )

[identity profile] plumqqz.livejournal.com 2011-10-13 02:20 pm (UTC)(link)
А чем монадные трансформеры отличаются от монадических?

[identity profile] nealar.livejournal.com 2011-10-13 02:22 pm (UTC)(link)
Тем же, чем трансформеры от трансформаторов.

[identity profile] plumqqz.livejournal.com 2011-10-13 02:28 pm (UTC)(link)
"А.Г.Лукашенко как монадический трансформатор реальности".

[identity profile] dev117.livejournal.com 2011-10-13 03:43 pm (UTC)(link)
В чём проблема то?

Хороший и понятный код.

[identity profile] blackyblack.livejournal.com 2011-10-13 06:27 pm (UTC)(link)
Теги к данной записи составляют рабочую программу на хаскеле. У меня тоже, почему-то, когда я пишу на Erlang, чтение и запись всяких конфигов составляет основную головную боль. Должна быть какая-то глубинная жаба, которую достаточно победить и все конфиги станут подвластны.

Re: Закономерный итог

[identity profile] anatoly borodin (from livejournal.com) 2011-10-13 08:22 pm (UTC)(link)
РИТЧИ УМЕР ЗА НАШИ БАГИ!!1!

[identity profile] nivanych.livejournal.com 2011-10-14 03:46 am (UTC)(link)
Ви опять намекаете на "Ленин, как катализатор промышленной революции"?

[identity profile] nivanych.livejournal.com 2011-10-14 04:02 am (UTC)(link)
Конструкции не кошмарные, а вполне нормальные для такого подхода.
Только нахер?...
Тут исключений-то только при работе с COM-портом, да может быть, чтении файла...
Использовать ErrorT для обшибок парсения затея с непонятной целью...

Re: Закономерный итог

[identity profile] thedeemon.livejournal.com 2011-10-14 07:21 am (UTC)(link)
И искупил их?

[identity profile] migmit.livejournal.com 2011-10-16 05:39 pm (UTC)(link)
Угу. Правда, переменные с одним и тем же именем, ИМХО, не есть что-то хорошее, но в остальном — выглядит вполне приятно.