23

Hackage には多くのパッケージがあり、よく知られているもの (HUnit など) とあまり知られていないもの (AspectAG など) があります。どのパッケージが、より多くのユーザーに値する隠された宝石だとお考えですか? おそらく、有用なデータ構造、モナドのヘルパー、ネットワーク、テストなどでしょうか?

Hackage でお気に入りの「隠された宝石」パッケージはどれですか?

4

6 に答える 6

16

Oleg Kiselyov のIteratee。私はまだそれがどのように機能するかをよく理解していませんが、60,000 個のファイルをすばやく読み取る必要があり、通常の Haskell ファイル アクセス アプローチの理由を理解する時間がなかったときに、私の命を数回救ってくれました。とても遅いです。

また、Brian O'Sullivan のAttoparsecは、私の経験では、大規模なフラット ファイル データベースなどで Parsec よりもはるかに優れたパフォーマンスを発揮します。

これで、2 つを組み合わせることができます。

Conal Elliott のVector-spaceパッケージは、多くの線形代数関数を非常にうまくまとめており、型族に少し慣れてきました。

R よりも Haskell で作業したいので、Statistics (これも O'Sullivan によるもの) は便利でした。

HXTCriterionは「隠された宝石」ではありませんが、私の意見では、より広く使用されるに値します。

于 2010-05-23T13:58:03.527 に答える
12

ベクトル- 高速な配列が簡単になりました (私は Data.Array が好きではありません)。1つだけ投票できるとしたら、これが今の投票です。

徹底的なテストのためのLazy Small Check (論文も参照)。

Cereal - すべての一般的なデータ構造には、Binary および Serialize インスタンスが必要です。デッド コードをドロップするコンパイラを信頼してください。

meldable-heap - まだ使っていませんが、これはソフトウェアの開発方法の例です!

グラフ- 論文やプレゼンテーション用のグラフを作成するときに役立ちました。

Atom - 言い訳が欲しいのですが、まだ手に入れていません。

于 2010-05-23T15:54:07.087 に答える
8

私がかなり頻繁に使用する、過小評価されている実用的なライブラリのいくつか:

于 2010-05-23T16:45:34.387 に答える
4

私はdontライブラリが好きです:

main = don't $ do
   name <- getLine
   putStrLn $ "hello " ++ name
于 2010-05-28T18:01:20.983 に答える
3

これは自己宣伝であることを前もって警告しますが、私のパッケージは私自身よりも多くのユーザーに値すると思います:)

つまり、timeplotはログから時系列をプロットするためのツールです。かなりの数の機能があります。詳細なチュートリアルを参照してください(内部にたくさんの写真があります)。

たとえば、これを使用して、応答時間の 25%、50%、および 90% の分位数に対する負荷の高いバックグラウンド プロセスの影響を調べることができます。または、1 日を通してオンラインのユーザー数を調べます。

これは「Unix 方式」で設計されています: 任意のログを取得し、それをプログラムの入力に変換する手早く簡単な awk または perl スクリプトを作成します (「イベント」で構成されます: 離散値インパルス、連続値インパルス)。インパルスの開始/停止)。

これは、ログ データの分析、特に特定の「インフラストラクチャ」パフォーマンスの問題の診断に非常に役立ちました。

于 2010-05-23T19:10:16.610 に答える
3

私は間奏が好きです- それらの「head: undefined」メッセージが消えないときのために!

于 2010-05-25T14:47:37.167 に答える