问题标签 [singleton-type]

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.

0 投票
1 回答
494 浏览

oracle - PL/SQL 中的单元类型是什么?

PL/SQL 中的单元类型是什么?如果没有内置类型,我如何制作一个?

0 投票
2 回答
221 浏览

scala - 单例类型中表面上的不一致

我有几个关于单例类型的问题,但是由于它们都非常密切相关,所以我将它们发布在同一个线程下。

Q1。为什么#1 不编译而#2 编译?

Q2。在我尝试过的其他引用类型的情况下,类型被正确推断,但在其他引用类型的情况下String却没有。为什么呢?

0 投票
2 回答
238 浏览

haskell - Haskell 中的内存高效虚拟值

如果我有键到值的映射,那么键集可以实现为键到固定虚拟值的映射。

有许多假人候选人:

  • data- 没有构造函数的定义类型
  • 其他无人居住的类型(例如forall a . a
  • 单例类型
  • 未装箱的类型

对我来说最明显的解决方案是使用库存单例类型(),但case我可以从底部区分(),所以我认为内存表示()包括间接。

我有两个问题:

  • 是否Map.fromList [(1, ()), (2, ())]占用更多内存let dummy = () in Map.fromList [(1, dummy), (2, dummy)]
  • 考虑到内存占用、cpu 使用率和正确性,建议从bytestring-triedummy构造集合的值是多少?
0 投票
1 回答
7334 浏览

haskell - Haskell 中的单例类型

作为对各种依赖类型形式化技术进行调查的一部分,我遇到了一篇论文,提倡使用单例类型(有一个居民的类型)作为支持依赖类型编程的一种方式。

根据这个来源,在 Haskell 中,运行时值和编译时类型之间存在分离,当使用单例类型时,由于引入的类型/值同构,它们可能会变得模糊。

我的问题是:在这方面,单例类型与类型类或引用/具体化结构有何不同?

对于使用单例类型的类型理论重要性/优势以及它们在多大程度上可以模拟一般依赖类型,我还特别感谢一些直观的解释。

0 投票
1 回答
1785 浏览

haskell - 用 Haskell 编码“小于”

我希望一些 Haskell 专家可以帮助澄清一些事情。

是否可以以Nat通常的方式定义(通过 Haskell 中的@dorcard Singleton 类型

(或其一些变体),然后定义一个LessThan关系,使得 forallnm

然后编写一个类型如下的函数:

我明确地想在输出类型中使用“LessThan” foo,我意识到人们当然可以写出类似的东西

但这不是我所追求的。

谢谢!

兰吉特。

0 投票
1 回答
88 浏览

java - 如何在spring中将birt运行时对象创建为单例

我想创建一个单例 birt 对象,因为 birt 对象是重量级的对象,我是这项技术的新手,所以会有任何帮助。

0 投票
1 回答
210 浏览

scala - 将特征限制为对象?

有没有办法限制一个特征,使它只能混入对象?例如

0 投票
1 回答
3652 浏览

scala - 在生成类型类实例时无法证明单例类型是单例类型

假设我有一个类型类来证明无形联积中的所有类型都是单例类型:

我们可以证明它与一个简单的 ADT 一起工作:

进而:

现在我们想将其与 Shapeless 的Generic机制结合起来,这将为我们提供 ADT 的联积表示:

我希望implicitly[EnumerableAdt[Foo]]工作,但事实并非如此。我们可以使用它-Xlog-implicits来获取有关原因的一些信息:

Baz.type不过,显然单例类型。我们可以尝试Witness手动将实例放入范围内,只是为了好玩:

不知何故,现在它起作用了:

我不明白为什么这些实例会在这种情况下工作,而由Witness.apply宏方法(我们用来创建它们)生成的那些却不能。这里发生了什么?是否有一种方便的解决方法,不需要我们手动枚举构造函数?

0 投票
2 回答
878 浏览

scala - Scala:有没有办法创建内联类型?

基本上,我希望能够写出这样的东西:

x 和 y 的类型不兼容,但要么共享一个超类型,要么可以使用上下文边界进行注释,从而允许我执行以下操作:

此处使用的关键字仅作为示例,目标是能够为某些标识符/关键字/字符串提供文字和单例类型。这些类型也可能在运行时被删除/统一,我只对静态类型检查感兴趣。我想应该可以使用宏来实现这一点,但我宁愿不这样做。

0 投票
2 回答
187 浏览

scala - 我可以通过简单的方法在 Scala 中获得未包装的单例类型吗?

在 Scala 中,在围绕 Miles Sabin 的 shapeless 库的讨论中,我看到过这样的代码:

像这样的地方:

有类型Option[Constant(name).type]。我想“为什么要把它包装在一个Option”中?但如果我试试这个:

thenname2有类型String,而我本来希望它是Constant(name).type。我错过了什么?是否有不涉及包装单例类型的解决方法?