Подтвердить что ты не робот

Какой ваш любимый пакет "скрытый драгоценный камень" в Hackage?

В Hackage есть много пакетов, некоторые из которых известны (например, HUnit) и некоторые менее известные (такие как AspectAG). Мне интересно, какой пакет вы считаете скрытым камнем, который заслуживает большего числа пользователей. Может быть, полезная структура данных, помощники для монадов, сетей, тестов,...?

Какой ваш любимый пакет "скрытых драгоценных камней" в Hackage?

4b9b3361

Ответ 1

Олег Киселев Iteratee. Я до сих пор не понимаю, как это работает, но это спасло мою жизнь пару раз, когда мне нужно было что-то вроде быстрого чтения 60 000 файлов и не успел выяснить, почему обычные подходы доступа к файлу Haskell были так медленно.

Также Брайан О'Салливан Attoparsec, который по моему опыту намного превосходит Parsec на таких вещах, как большие плоские базы данных.

И теперь вы можете объединить два.

Conal Elliott Vector-space очень хорошо подбирает множество функций линейной алгебры, а также немного приближает меня к комфорту с типом семьи.

Statistics (опять же О'Салливаном) было удобно, потому что я предпочел бы работать в Haskell, чем в R.

HXT и Criterion aren ' t "скрытые драгоценные камни", но, на мой взгляд, они заслуживают более широкого использования.

Ответ 2

Vector - быстрые массивы упрощаются (мне не нравится Data.Array). Если бы я мог голосовать только за одного, это было бы прямо сейчас.

Lazy Small Check (также см. статью ) для исчерпывающего тестирования.

Cereal - все общие структуры данных должны иметь двоичные и серийные экземпляры. Доверяйте компилятору удалять мертвый код.

meldable-heap - пока не использовали его, но это пример того, как разрабатывать программное обеспечение!

Chart - Это было полезно для меня при создании диаграмм для моей статьи и презентаций.

Atom - Я бы хотел извинить его, но еще не получил его.

Ответ 3

Некоторые недооцененные, прагматические библиотеки я использую довольно часто:

  • pcre-light (простое, быстрое сопоставление регулярных выражений)
  • mersenne-random-pure64 - быстрые, но чистые случайные числа
  • xosd - X11 на экране
  • ChasingBottoms - свойства теста для определения лени.
  • download-curl - простые, быстрые функции загрузки URL.
  • gnuplot - gnuplot dsl
  • hscolour vs colorize-haskell
  • tagsoup - разбор html без размышлений

Ответ 4

Мне нравится не библиотека:

main = don't $ do
   name <- getLine
   putStrLn $ "hello " ++ name

Ответ 5

Я предупреждаю, что это самореклама, но я думаю, что мой пакет заслуживает большего количества пользователей, чем только я сам:)

Итак, timeplot - инструмент для построения временных рядов из журналов. У этого есть немало особенностей, см. Обширный учебник (много фотографий внутри).

Например, вы можете использовать его, чтобы посмотреть на эффект супертяжелого фонового процесса на 25%, 50% и 90% квантилей вашего времени ответа; или посмотреть количество пользователей онлайн в течение дня.

Он спроектирован "по пути Unix": вы берете произвольный журнал и записываете быстрый и грязный простой awk или perl script, который преобразует его в ввод для программы (состоящий из "событий": дискретное значение импульсы, импульсы непрерывного значения и импульсы пуска/останова).

Мне было очень полезно анализировать данные журнала, особенно для диагностики определенных "инфраструктурных" проблем производительности: я просматриваю графики активности системы, и я вижу, что выглядит не так, как должно выглядеть.

Ответ 6

Мне нравится interlude - когда сообщения этих черновых головок: undefined 'просто не исчезнут!