问题标签 [scala-3]
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.
scala - 为什么多态方法的eta扩展不会产生多态函数值?
Scala 2 没有多态函数值,因此 eta 扩展多态方法只给出
然而 Scala 3 确实具有多态函数值,所以为什么 eta 扩展多态方法不提供更多
scala - scala 3 内联失败了一个非常简单的例子
我正在探索 scala3 内联的可能性。我制作了一个简单的示例,我希望在编译时应用构造密封类的验证方法:
到现在为止还挺好。但我真正想要的是能够重用from
内联函数中的函数。这是我尝试:
inlinedFrom3
是一种概括,表明如果我直接匹配对象的代码,编译器不会看到它们与输入字符串相同并采用错误的分支。
我想了解的是为什么inlinedFrom3
不起作用以及是否有办法使它起作用。
注意:我使用的是 scala 3.0.0-RC2
scala - TypeTest 以克服 scala3 中泛型类型的擦除
我在理解TypeTest
scala3 中的 s 如何替换TypeTag
scala 2 中的使用时遇到问题。用例能够匹配诸如 x: List [Int] 之类的通用参数。
我试图解决的具体例子:
编译器警告中的编译结果(如预期)
the type test for Mod[Foo.Bar] cannot be checked at runtime
和一个遥不可及的案例。
现在我的问题是:这可能在 scala3 中完成吗?
我的印象是我必须以某种方式TypeTest[Any, Mod[Foo.X]]
为所有 X提供一个Foo
枚举的子类。
但我什至在努力实现这些测试,以及了解它需要什么using
参数modifyBarsOrBaz
才能工作。
因此,我想出了以下(不工作)解决方案:
和一个天真的 tt 实现
我试图在网上搜索答案,但由于这是相当新的,我并不幸运。有什么提示吗?
scala - [F <: List[A], A] 和 [F[_] <: List[A], A] 的推理差异
A
考虑以下两个类型参数子句中类型参数对类型构造函数的推断差异
为什么在第二种情况下推断A
类型构造函数的类型参数?F
Any
scala - `F[_ <: A] <: B` 在类型级别和 `f: A => B` 在值级别之间的类比
假设作为, letF[_ <: A] <: B
的类型级模拟,则不应键入 application yield when ,因此应在以下情况下编译f: A => B
[F[_ <: Int] <: List[Int], A <: Int]
F[A]
List[Int]
A = Int
f(List(42))
通过显式提供类型参数应用错误消息使其工作
类比在哪里中断?我认为从错误到F[_ <: Int] <: List[Int]
类型级别函数的心智模型在哪里?Int
List[Int]
scala - scala中的伴侣对象
我正在尝试编写一个toFirstOrSecond方法,该方法允许我在没有任何额外代码的情况下调用 Try。
但我得到一个错误我该object Try in object A does not take parameters
如何解决这个问题?谢谢
scala - 在 Scala 中为类型类添加新方法
我正在尝试向toA()
utils.Try 类添加新方法。但我面临一个类型的问题:
案例成功返回我们v : Any
,但我需要v : V
。如何获得v : V
?也许我需要一个功能Apply
?我是新手,我不明白
scala - Scala 3 中的 `scala.tools.nsc.MainGenericRunner` 的等价物是什么?
dotty中的等价物是scala.tools.nsc.MainGenericRunner
什么?
我检查了包dotty.tools.dotc
https://github.com/lampepfl/dotty/tree/master/compiler/src/dotty/tools/dotc
但找不到任何东西。
我尝试使用dotty.tools.dotc.Run
但出现错误
换行:java.lang.NoSuchMethodException:dotty.tools.dotc.Run.main([Ljava.lang.String;)
scala - 使用 AnyKind 的种类多态性用例
给定
与声明的类型参数的类型相比,我们不能传递不同类型的类型参数
但是我们可以通过以下方式声明类型参数是多态的AnyKind
的用例是AnyKind
什么?它解决了什么实际问题?