cost 288 ms
多态 function 为 phantom GADT 类型 - Polymorphic function for phantom GADT type

我是 OCaml 的新手。 我正在编写一个简单的汇编程序编译器。 我在我的 AST 中使用了以下类型。 我认为类型很好,因为它们禁止对不同的(按位)寄存器进行操作。 但现在我有一个问题。 我不知道如何像下面这样写 function 我只是不知道如何获得一个 function,它接受一个字符串(或未明 ...

未强制执行的方法的类型限制 - Type bounds on methods not enforced

我无法理解为什么编译器允许当前代码。 我使用幻像类型来保护对方法的访问。 只有在特定的“状态”下才允许调用方法。 在大多数情况下,这个不变量确实是经过编译验证的。 然而,有时编译器只是忽略了幻像类型所施加的约束。 这感觉像是一个重大错误。 我不明白什么? 我试图尽可能地简化问题。 我的用例更复杂:c ...

Haskell 的“Const”函子是否类似于范畴论中的常数函子? - Is Haskell's `Const` Functor analogous to the constant functor from category theory?

我知道 Haskell 中的许多名称都受到范畴论术语的启发,我试图准确理解类比的开始和结束位置。 类别Hask 由于有关严格/懒惰和seq的一些技术细节,我已经知道Hask不是(必然)一个类别,但现在让我们把它放在一边。 为了清楚起见, Hask的对象是具体类型,即 kind *的类型。 这包括 ...

ST样封装 - ST-like encapsulation

我正在尝试使用类型系统来确保 X 永远不会从 monad M 中取出。我希望它的工作方式类似于runST ,其中不可能混合来自不同线程的环境。 但是,以下代码不会导致类型错误: 为什么 ST monad 中的类似代码会抛出错误而我的不会? 据我了解的s在M sa应该成为约束,使得s在X s游 ...

生锈中的PhantomData类型用法 - PhantomData type usage in rust

我正在浏览一些生锈的源代码,我找到了一个名为PhantomData的数据类型。 我正在浏览生锈文档,并在互联网上搜索了很多。 但是,我无法理解这种数据类型的实际使用情况。 如果可能的话,有人可以用简单的方式向我解释一下吗? ...

具有新数据的类型的限制集,如“树 a” - The limit set of types with new data like `Tree a`

在 Haskell 中探索和研究类型系统我发现了一些问题。 1)让我们将多态类型视为二叉树: 并且,例如,我只想将我的考虑限制为Tree Int 、 Tree Bool和Tree Char 。 当然,我可以做一个这样的新类型: 但是是否有可能以更优雅的方式(并且没有像T1 、 T2 、 ...

在类型声明中键入限制 - Type restriction in type declaration

有一个着名的类型级自然数的例子: 当我们应用类型构造函数Succ时,我有一个关于理想限制的问题。 例如,如果我们想在函数定义中进行这样的限制,我们可以使用类和上下文,就像在这段代码中一样: 使用toInt (undefined :: Succ Int)是不可能的,没关系。 ...

模式匹配幻像类型 - Pattern match phantom type

我正在尝试实现一个CurrencyQty类型,它类似于在编译时标记的数字: 现在我想实现一个动态查找汇率的通用转换函数。 假设我有一些功能 我想写 或者不知何故 我正在使用的语法显然是无效的haskell ...有没有办法实现这一目标? ...

如何在线程中共享包含幻像指针的结构? - How do I share a struct containing a phantom pointer among threads?

我有一个结构,需要在一个类型上是通用的,但该类型实际上并不包含在结构中:它用于此结构的方法,而不是结构本身。 因此,该结构包括一个PhantomData成员: 幻像成员被定义为指针,因为该结构实际​​上不拥有类型T的数据。 这是std::marker::PhantomData文档中的 ...

将JSON数组反序列化为元组并为其指定类型标记 - Deserialize JSON array into tuple and give it type tags

我有JSON看起来像: 数组中的对象当然具有除range的字段,但无关紧要。 是否可以将它们反序列化为具有两种幻像类型的元组,以指示开始和结束是自动包含还是独占? 这也可以通过将数字反序列化为某种具有幻像类型的元组来解决。 这不起作用,因为serde_json似乎对P ...


 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM