Haskell проекты, чтобы учиться и учиться?
Как разработчик, новичок в Haskell, я ищу open-source
Приложения Haskell, с которыми я мог учиться и учиться.
В частности, я ищу проекты с открытым исходным кодом, которые показывают:
- Как писать сетевые серверы, которые хорошо масштабируются, с низким ответом
латентности и высокая пропускная способность.
Warp веб-сервер будет
возможно, это пример, есть ли другие?
- Приложения, показывающие методы для поддержания низкой памяти, или
показывая примеры дизайна, совместимого с GC.
- Проекты, демонстрирующие методы тестирования приложений Haskell
(родственный вопрос: haskell-testing-workflow).
- Программы, предназначенные для работы в многоядерных системах.
Какие проекты с открытым исходным кодом вы бы рекомендовали в качестве примеров современных
Программирование Haskell?
Связанный вопрос SO: good-haskell-source-to-read-and-learn-from.
Ответы
Ответ 1
Что касается сетевых серверов, я предлагаю прочитать Mighttpd - высокопроизводительный веб-сервер в Haskell от Kazu Yamamoto, из вопрос 19 из Monad.Reader; он использует Warp под капотом и может достигать скорости, превышающей скорость nginx (!). В этой же проблеме также есть статья о Haskell-MPI, поэтому она также подходит для многоядерного программирования.
Часто рекомендуется использовать xmonad исходный код (например, связанный с вами вопрос), поскольку он является широко используемым, стабильным кусок "реального" программного обеспечения с необычным вниманием и вниманием к хорошему дизайну Haskell.
Ответ 2
Я многому научился от взлома на hledger.