typeclass 相关问题

Haskell中的类型类是支持ad hoc多态的语言机制。它们也存在于Scala,Coq和Isabelle中。

如何使用 Haskell 中的 Bounded 类型类来定义具有浮点范围的类型?

我预计以下代码会因违反 minBound 和 maxBound 而失败并出现类型错误。但是,正如您所看到的,它在没有标记错误的情况下完成了。 {-# OPTIONS_GHC -

回答 1 投票 0

在 Scala 中使用 `opaque type` 作为类型类

知道为什么这不能编译:https://scastie.scala-lang.org/iPmLyim4Q8aQ2aMNIfj2gA 不透明类型 Global[Value] = Unit 全局对象: def 派生[值]: 全局[值] = () 案例类 Yo() d...

回答 1 投票 0

如何编写一个可以在“obj”以及“Maybe obj”上调用“getField @k”的 Haskell 函数

我正在尝试编写 HTML 表单助手,我希望调用站点支持以下两种用例: {-# 语言AllowAmbigouslyTypes、DataKinds、OverloadedStrings #-} 导入数据.Proxy

回答 1 投票 0

Scala 3 联合类型的给定/隐式

我有一些类型类,例如: 特征示例类型类[A] // 想象这里有一个或多个方法 对象示例类型类: 给定ExampleTypeClass[Int] = new ExampleTypeClass{/* ... */} 给定

回答 1 投票 0

Haskell 调用预期类型的方程时出错

我正在对 haskell 方法执行以下调用 rollD6 :: (RandomGen g, Int a) => Int -> ([a], g) rollD6 次 = 滚动 Die6 次 (mkStdGen 6) rollD6InRange :: (RandomGen g, Int a) =>...

回答 1 投票 0

为什么我无法在 Haskell Typeclass 中进行模式匹配?

我正在尝试在 Haskell 中滚动一个代数数据类型 Die,使用以下定义定义 数据 Die = Die6 |模具4 |模具20 |模具100 我定义了以下类型类 类 Roll a where

回答 1 投票 0

使用类型类约束重写规则

之前有几个关于具有类型类约束的重写规则的问题,但它们似乎涉及更高级别的多态性。在这里,我有一个更“香草”的地方......

回答 1 投票 0

当尝试使用 Shapeless 将 Map 转换为 scala 对象时,编译器不会拾取余积导数

我正在尝试将 Map[String, AttributeValue] 转换为 Scala 对象。 AttributeValue 表示 DynamoDB 中的数据。下面存根中的 FromAttributeValue 用于转换基本情况 以下是鳕鱼...

回答 1 投票 0

如何从 REPL 检查给定的约束是否得到满足?

为了探索具有复杂类型和类型类实例的库,我想从 REPL 检查类型类约束是否满足(提供所有相关实例...

回答 1 投票 0

类型类投影作为继承

我希望允许类型类在联合类型上轻松“继承”,通过在存在投影时自动派生类型类(此投影是我定义的另一个类型类...

回答 1 投票 0

带有隐式转换的类型类中的堆栈溢出

我为 Scanamo 制作了一个通用的 DynamoFormat,它将任何定义了 Circe 编码器和解码器的对象作为 Json 字符串放入数据库中。 导入 com.gu.scanamo.DynamoFormat 导入 io.circe....

回答 1 投票 0

(,) 的 Foldable 实例有何用处?

我错误地将长度应用于(pa,ir)并花了一点时间才找到答案,因为代码可以编译! 于是我查了一下 :t length,它告诉我它的参数只需要是一个 Fold...

回答 1 投票 0

如果我显式启用 DerivingStrategies,Cabal 与 GHC 不同,为什么不会自动启用 GeneralizedNewtypeDeriving?

(第一次玩这些东西。) 从文档中我倾向于认为,如果我启用 DerivingStrategies 扩展,我不需要启用 GeneralizedNewtypeDeriving 或

回答 1 投票 0

Scala avro4s,为共同特征定义 SchemaFor?

我正在尝试为一个共同特征定义 avro4s 模式派生。例子 特质事件 case class UserCreated(name: String,age: Int) 扩展 Event 案例类 UserDeleted(原因: String) 扩展...

回答 1 投票 0

冻结的包类返回 - “类型‘Null’不是类型转换中类型‘String’的子类型”

我是 Dart 和 OOP 的新手。我正在使用冻结的包来创建我的模型类。我无法在我的函数中得到返回的响应,总是去 catch(error) 这是我的代码 静态未来<

回答 1 投票 0

`F[_]:Sync`中的`F`是什么,它来自哪里?

我想使用该存储库中的 cats-saga:https://github.com/VladKopanev/cats-saga 然而我被困在 OrderSagaCoordinator.scala L160 的那段代码上: def apply[F[_]: 同步:

回答 1 投票 0

在Python中为模块(而不是类)中的函数实现类型?

def f(x, y): 返回 x & 1 == 0 且 y > 0 g = lambda x, y:x & 1 == 0 且 y > 0 现在 Haskell 中也有同样的事情: 导入数据位 f :: Int -> Int -> Bool f x y = (.&.) x...

回答 2 投票 0

如何指定具有多参数单射性的类型族?

我有一个类型类 A ,它具有非单射关联类型 Context A 类 a 其中 类型上下文 a A 的许多实例可以具有相同的上下文。 A 的某些实例也是 ...

回答 1 投票 0

为什么 Data.Dynamic 包含见证而不是类型类约束?

Data.Dynamic 有以下实现: 数据动态在哪里 动态 :: TypeRep a -> a -> 动态 我发现以下定义是等效的(至少我......

回答 1 投票 0

如何为类型联合定义类型类?

我遇到的问题是,当我尝试在联合上定义类型类时,我会遇到无限递归。 特征 Foo[A]: 扩展名(一:A) def bar: 字符串 现在假设我有以下 gi...

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.