Что бы написать на Haskell для освоения языка?
От: Аноним  
Дата: 29.09.09 16:03
Оценка:
Всем здрасти!

Как наткнулся на туториал по хаскелю, загорелся желанием его освоить.
Нарешал кучу высосанных из пальца счетных задачек, в том числе с project euler, для изучения и запоминания синтаксиса.
Отменный калькулятор! Просто нет слов

Какое бы написать "real world application", чтобы библиотеки освоить?
Re: Что бы написать на Haskell для освоения языка?
От: Zert  
Дата: 30.09.09 03:36
Оценка:
Распределённую систему вычислений, например.
Re: Что бы написать на Haskell для освоения языка?
От: Аноним  
Дата: 30.09.09 05:54
Оценка: +1
Помоему писать real world application не освоив монады и преобразователи монад -- заранее обрекать себя на насилие над собой и языком с огромным кол-вом строк в императивном стиле внутри IO монады и с мини-вставками в функциональном стиле. Напишите систему контроля изменений файловой системы с отчетами по выявлению негодяя, испортившего тот или иной конфиг и возможностью отката до любого предыдущего состояния.

Я, когда осваивал haskell, писал мини-игры, сейчас без слёз не могу на тот код смотреть: после рифакторинга код сокращается в 5-10 раз, куча функций из стандартной библиотеки переписанных самостоятельно, давление процедурного програмирования, кривые таскания огромных структур данных через функции, громоздкие и ненужные обработчики ошибок через исключения, там где Maybe сделает все коротко и красиво. Где можно было быстро красиво и понятно обойтись Writer'ами, [], Maybe, State и преобразователями их, громоздкие глазоломательные монстроподобные блоки хардкодинга... Ужас вобщем.
Re[2]: Что бы написать на Haskell для освоения языка?
От: Denom Украина  
Дата: 30.09.09 07:38
Оценка: +4
Здравствуйте, <Аноним>, Вы писали:

А> после рифакторинга код сокращается в 5-10 раз

ну и сделал бы статью — показал примеры до и после рефакторинга. объяснил что да как.
кстати какие игры делал?
... << RSDN@Home 1.2.0 alpha 4 rev. 1237>>
Re[2]: Что бы написать на Haskell для освоения языка?
От: neFormal Россия  
Дата: 30.09.09 07:47
Оценка:
Здравствуйте, Zert, Вы писали:

Z>Распределённую систему вычислений, например.


распределённый спам-фильтр
...coding for chaos...
Re[3]: Что бы написать на Haskell для освоения языка?
От: Аноним  
Дата: 30.09.09 10:13
Оценка:
Здравствуйте, neFormal, Вы писали:

F>распределённый спам-фильтр


Могу написать простенький фильтр с использованием Байеса.
Есть затык небольшой — мне доступно 3 компьютера всего
Не шибко большая распределенная система, но для прототипа сгодится.
Re[2]: Что бы написать на Haskell для освоения языка?
От: Аноним  
Дата: 30.09.09 10:31
Оценка:
Здравствуйте, Аноним, Вы писали:
А>Помоему писать real world application не освоив монады и преобразователи монад -- заранее обрекать себя на насилие над собой и языком с огромным кол-вом строк в императивном стиле внутри IO монады и с мини-вставками в функциональном стиле.

Хорошо, буду налегать на монады.

А>Напишите систему контроля изменений файловой системы с отчетами по выявлению негодяя, испортившего тот или иной конфиг и возможностью отката до любого предыдущего состояния.


Для выявления, какой пользователь и какая программа, совершила обращение к файлу, без написания драйвера не обойтись. Есть прецеденты использования Haskell для системных утилит?
Re[3]: Что бы написать на Haskell для освоения языка?
От: Mr.Cat  
Дата: 30.09.09 10:57
Оценка:
Здравствуйте, Аноним, Вы писали:
А>Есть прецеденты использования Haskell для системных утилит?
XMonad сойдет?
Кстаааати. Добавь в XMonad кнопку "сделать пи^W^W^W... то-нить этакое прикольное.
Re[2]: Что бы написать на Haskell для освоения языка?
От: BulatZiganshin  
Дата: 30.09.09 14:44
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Помоему писать real world application не освоив монады и преобразователи монад


во freearc ничего этого нет. мучения есть, но они связаны с взаимодействием с С и gtk, так шта...
Люди, я люблю вас! Будьте бдительны!!!
Re: Что бы написать на Haskell для освоения языка?
От: BulatZiganshin  
Дата: 30.09.09 14:48
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Какое бы написать "real world application", чтобы библиотеки освоить?


какие именно? советую писать нахаскеле алгоритмически сложные вещи, системные утилиты (в широком смысле, вплоть до трейдинговой плаnформы или поисковика)
Люди, я люблю вас! Будьте бдительны!!!
Re[2]: Что бы написать на Haskell для освоения языка?
От: Аноним  
Дата: 30.09.09 15:40
Оценка:
А>>Какое бы написать "real world application", чтобы библиотеки освоить?

BZ>какие именно? советую писать нахаскеле алгоритмически сложные вещи, системные утилиты (в широком смысле, вплоть до трейдинговой плаnформы или поисковика)


Трейдинговая платформа, интересно... Как я понял, сделать ее надо так, чтобы торговала сама, а не просто являлась терминалом, вроде метатрейдера у заманухи с форексами?
Re: Что бы написать на Haskell для освоения языка?
От: SolVolkov  
Дата: 01.10.09 19:12
Оценка: 1 (1)
Здравствуйте, Аноним, Вы писали:

А>Всем здрасти!


А>Какое бы написать "real world application", чтобы библиотеки освоить?


Зачем сразу риал ворлд? Находиш в Сети любой опен-сорс проект на хаскеле, заходиш на его багтрекер, выбираеш понравившийся баг\фичереквест и исправляеш\реализуеш.
Re[2]: Что бы написать на Haskell для освоения языка?
От: demi США  
Дата: 02.10.09 16:12
Оценка:
Здравствуйте, SolVolkov, Вы писали:

SV>Здравствуйте, Аноним, Вы писали:


А>>Всем здрасти!


А>>Какое бы написать "real world application", чтобы библиотеки освоить?


SV>Зачем сразу риал ворлд? Находиш в Сети любой опен-сорс проект на хаскеле, заходиш на его багтрекер, выбираеш понравившийся баг\фичереквест и исправляеш\реализуеш.

+1, но только за "реализуешь". Сначала надо самоу что-то написать, чем у других править.
Не стыдно попасть в дерьмо, стыдно в нём остаться!