問題タブ [hackage]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
haskell - 便利な Haskell HashMap/HashTable/Dictionary ライブラリは存在しますか?
モナドを使用しない定数アクセス クエリO(1)連想配列を探しています。
仮説的なタイプを考えてみましょう:
一度不変の構造を構築したい:
その後、一定時間のアクセスで繰り返しクエリを実行したい::
不足している 2 つの候補ライブラリがあるようです。
unordered-containers
unordered-containers
タイプの厳密なバリアントと遅延バリアントの両方が含まれますHashMap
。関数によって文書化されているように、両方HashMap
の s にはO(log n)クエリがありlookup
ます。このクエリ アクセス時間は、 O(log n)機能HashMap
を可能にする内部ツリー構造を持つ型の構築によるものと思われます。多くのユースケースで理解できるデザインのトレードオフですが、変更可能なものは必要ないため、このトレードオフが私のユースケースを妨げています。 insert
HashMap
hashtables
hashtables
HashTable
タイプクラスと、さまざまなテーブル構築戦略を持つ 3 つのインスタンス タイプが含まれています。このライブラリの型クラスは一定時間のO(1) lookup
関数定義を定義しますが、それはST
モナドに永遠に埋め込まれています。HashTable
ステートフルな実装を「凍結」してlookup
、ステートフルなモナドに埋め込まれていない関数を持つ方法はありません。ライブラリの型クラス インターフェイスは、計算全体がステート モナドにラップされている場合は適切に設計されていますが、この設計は私のユース ケースには適していません。
ステートフル モナドに埋め込まれていない不変の定数アクセス クエリO(1)連想配列を構築できる型と関数を定義する他のライブラリは存在しますか?
これらの既存のハッシュ ベースのライブラリをラップまたは変更して、ステートフル モナドに埋め込まれていない不変の定数アクセス クエリO(1)連想配列を生成する方法はありますか?
linux - Cabal が Linux に network-2.6.3.1 をインストールできない
要するに、私は Haskell の世界にかなり慣れていないため、network-2.6.3.1 に依存するパッケージをインストールする際に問題が発生しています。
ネットワークを単独でインストールすると、同様の結果が得られます。インストールでエラーが発生する場合に通常考えられることや推奨される手順はありますか? 他のパッケージ、ghcid、ghc-mod などを正常にインストールしました。
アップデート
haskell - Hackage が README をレンダリングするために使用する Markdown の方言は?
Hackage はしばらくの間、 Markdown README を表示できました。
しかし、たとえばの Hackage ページでhpack
わかるように、Hackage は GitHub と同じテーブル構文をサポートしていないようです。
マークダウン:
GitHub でレンダリング:
Hackage でレンダリング:
だから、私は疑問に思っています:
- Hackage はどの Markdown 方言をサポートしていますか?
- その方言にテーブルの構文はありますか?
- GitHub と Hackage の両方でサポートされている Markdown のサブセットにテーブルの構文はありますか?