typeclass

    3

    1答えて

    What does comparable mean in Elm?comparableは、型変数を組み込み型に制限するために使用できるビルトイン型制約です。これはよく似ています。次の質問が思い浮かびます(見つけにくいです): 現在Elmには他のタイプの制約がありますか?どこかリストがありますか? 独自の型制約を作成する方法はありますか? ElmはHaskell Typeclassesのような機構を

    4

    1答えて

    Scalaのimplicitlyの呼び出しが実行時にnullを返すと、私は最近驚いていました。暗黙的なスコープで暗黙的なインスタンスが利用できない場合、コードをコンパイルしてはならないと考えると、そうは考えられませんでした。暗黙のうちにnullを返すことはいつ可能ですか?これはコンパイラの制限ですか、これが予期される動作ですか? ここにいくつかの文脈が役立ちます。私は、任意のネストされたケースクラ

    2

    2答えて

    いくつかのタイプ特化を実装しようとしています プリズムで動作するいくつかの関数があり、 GHC 8で問題があります。 < 8ですが、別の質問では です)。 A問題の(不自然な)最小限の例: foo :: Prism' s a -> Prism' s a foo = id {-# RULES "foo/foo'" foo = foo' #-} foo' :: Prism' Char Bool

    1

    1答えて

    呼び出し元が利用可能な型情報を持っていて、def write[T : Writer](x: T)と呼ぶことができるように、プログラムで使用されるAPIがあるとします。ことを考えると しかし、今は型なしで、REST APIは、IDが動作するため、我々は、手元に型情報を持っていないあなたのREST APIからこれらの型クラスを再利用したいと思います...今 、 Tのすべてのインスタンスは、我々はそれに

    3

    1答えて

    私はCoqのmath-classesライブラリを使って作業しています。このライブラリは、型クラスを賢明に使用して、このような表記をオーバーロードします。 (* From math-classes *) Class Equiv A := equiv : relation A. Infix "=" := equiv : type_scope. (* My code *) Definition

    1

    1答えて

    多項式を表すtypeclassのshow関数の文字列表現を作成しようとしています。私は 'Char'から '[Char]'へのミスマッチの型エラーを受け取り続けますが、私の理解から、haskellの "append"関数はCharを文字列/ Charに連結することができます。私はどこに問題があるのか​​、私が受け取ったエラーに基づいて解決策を探すべきかを理解していません。ここに欠陥のあるコードがあ

    2

    1答えて

    これは、型を制限することなく契約を定義するためにScalaで使用することを検討しているパターンですが、流暢なAPIはすべて冗長な意味を持たずに残しています[..]。 アイデアはそうのような型クラスの上に暗黙のクラスを構築することです: val sum = n1.add(n2) の代わりに::あなたがすることができる範囲で右暗黙で今 implicit class NumberLikeApi[N

    2

    1答えて

    ImpredicativeTypesで何ができるかを見ていて、正確に何ができるのか見たいと思っていました。 TypeClassesとのやりとりに関しては、私が気がついたことに遭遇したときには奇妙な振る舞いがあります。 :t mempty mempty :: forall a. Monoid a => a :t Right Right :: forall a b. b -> Either a

    5

    1答えて

    タイプメンバが型パラメータに抽出されるAuxパターン(シェイプレスや他の場所で使用されているような)の感覚が少しありますが、同じ引数リストの引数が 'お互いに依存していますが、私は一般的にどのようなものが使用されているのか、どのような問題が解決するのかはっきりしていません。 たとえば、私は現在、ホワイトボックスマクロによって返されたより具体的なタイプを保存して処理する方法を理解しようとしています。

    1

    1答えて

    私は作業中のタイプの型引数についてかなり複雑な条件を使用して型クリスタルのインスタンスを定義しようとしています。私が定義しているインスタンスの中から選択するクローズドタイプのファミリを宣言することになります。残念ながら、GHCはインスタンスが重複していると不満を表明するので、私はそのアイデアをまったく動かすことができません。ここで私が見ている同じエラーを与える簡単な例です: {-# LANGUAG