問題タブ [monoids]
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 のモノイドの例です:
これは、Clojure のモノイドの例です。
これは Haskell のリングの例です:
これは、これに基づくClojure のリングの例です。
リングとモノイドの違いは、リングには「実装するインターフェースに追加のメソッド」があることです。(おそらく私は間違っています)。私にとって、これは結合性に影響を与えるでしょう-しかし、私はこれの完全な意味について頭を悩ませていません.
私の質問は次のとおりです。モノイドとリングの違いの意味は何ですか?
mongodb - パラメータ化されたモノイドの一般的なゼロを作成しようとしているときに Nothing ボトム タイプを使用する際の問題
これが私のコードです。Casbah を使用してタイプセーフな MongoDB クエリを作成できます。
これらの行に満足していないことを除いて、正常に動作します。
フォールディング操作ごとにこれら2つのオブジェクトの新しいインスタンスを作成するのではなく、TypesafeMongoQuery[Nothing]
構築される基礎となるDBObjectが常に同じであるため、タイプのval /シングルトンを使用することは可能だと思います。
署名を至る所で置き換えるなど、いくつかのことを試しました[ObjectType,T <% ObjectType]
が、大きな成功はありませんでした。
私の問題を解決する方法について何か考えはありますか?
haskell - なぜ折り方がないのですか?
Foldable クラスには、fold、foldl、foldr、foldl'、foldr' が含まれていますが、fold はありません (厳密なモノイド フォールドの場合)。
フォールドの動作を IntMap でエミュレートするにはどうすればよいですか (ツリーとして実装されていますが、内部ノードに直接アクセスすることはできません)。
動機:
特に、サイズ K (合計サイズ N = M*K) の M 個の IntMap を含む IntMap がある場合、それらを O(N * log(M)) big-O 実行時間で結合したいと考えています。何かのようなもの:
IntMap は、mappend が共用体として定義された Monoid のインスタンスであるため、これは機能します。一般に、foldl' または foldr' を使用すると、最悪の場合の実行時間が Omega(N * log N) になるため、理論的には遅くなります。確かに、これはおそらく実際には取るに足らない違いですが、私は理論的に最適な境界を気にするのに十分な知識を持っています.
おっと、上記は間違っています。もっと注意深く調べてみたところ、fold を使用するか、foldl を使用するか、foldr を使用するかは問題ではないことがわかりました。実行時間は O(N * log(M)) になります。したがって、この質問に対する動機はもうありません。
coq - Coqのモノイドインスタンスとしての紙、はさみ、岩の証明
そこで、Coq を学習しながら、ゲームの紙、はさみ、ロックを使った簡単な例を作成しました。データ型を定義しました。
そして3つの機能:
コンポジションも定義します (ただし、これは標準ライブラリのどこかにあるはずです)。
ここで説明されているように、クラスのモノイドを実装します
asとasPSR
の下でモノイドを形成できることをついに証明することができましたcompose
+
me
1
質問
Instance MSPR : Monoid compose me.
申請するだけで仕事intros
の証明ができるのはなぜreflexivity
ですか?正直なところ、私は自分が何をしていたかを知っていましたが、split
次のようなものを得た後intros
intros
試しapply compose.
ましたが、うまくいきませんでした。魔法reflexivity.
のように解決しましたが、理由はわかりません。
サイドノート
このように力を定義すると、これは素晴らしく機能しました
その後、Compute (power beats 2) paper.
利回り
これをしたのはbeats (beats paper) = beats scissor = rock
!!!
haskell - 結果を複製しない HXT の論理 OR
HXTに少し問題があります: いくつかの基準に一致するドキュメント内のすべてのノードを見つけようとしています。レンズ/XPath を OR のような方法で述語として結合しようとしてControl.Arrow.<+>
います。ガイドが提案します。ただし、ドキュメントで矢印を「実行」しようとすると、結果が重複します。重複を削除したり、より意味のある方法でテストを組み合わせたりする簡単な方法はありますか? これが私のコードです:
しかし、これを (任意の Web ページで) 実行するたびに、結果/ノードが重複します。これはモノイドを模倣するArrowPlus typeclass<+>
の一部であり、ArrowXMLはArrowListとArrowTreeの両方のインスタンスであるため、多くの作業が必要です。ArrowIf述語を作成する必要がありますか? これに関するどんな助けも素晴らしいでしょう:)
haskell - モノイド インスタンス フォーム HList レコードが機能しない
Monoid
のインスタンスを定義しようとしていますが、インスタンスHList Record
が重複しているというエラー メッセージが表示されます。私の試み(コードは複雑に見えますが、基本的にタプルインスタンスになるものです)
エラーメッセージ:
どういう意味ですか ?この問題を解決するにはどうすればよいですか? (私は GHC 7.6.3 を使用しています)
haskell - 「and []」が True で「or []」が False である理由
空のリストの「and」がtrueを返すのはなぜですか?空のリストがTrueを保持していることを意味しますか? 申し訳ありませんが、これを正しく読んで理解できないので、修正してください。ありがとう。