问题标签 [scala-2.10]

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 投票
2 回答
140 浏览

scala - 有没有办法将Scala反射中的两个等价类型转换为两个等价类型?

考虑以下:

所以通过 typeOf[Boolean] 函数得到的类型和检查方法得到的类型是等价的,但并不相等。

有没有办法将两种等效类型转换为结果相等的一些规范表示?我希望能够将它们用于地图中的键之类的东西。

编辑:

更清楚地说,我正在寻找的是(不是真正的 repl 会话):

所以等价性被转换保留。我还需要它来处理参数化类型。

0 投票
3 回答
483 浏览

scala - Scala 2.10 中的新行为

这是两个 REPL 会话(受此问题启发,尽管我的问题不同):

和:

唯一的区别是第一个是 Scala 2.9.2,第二个是 2.10.0。

有人能指出导致这种新行为的 2.10 中的变化吗?

我知道强制转换Nothing是一件愚蠢的事情,答案可能是“这都是未定义的行为,所以停止这样做”,但它看起来可能会对升级者产生影响,我不知道'不记得遇到任何可以解释这一点的变化的讨论。

0 投票
0 回答
544 浏览

scala - 是否可以使用 scala 2.10 找到(在运行时)所有子类(混合了某些特征)

我需要找到所有混合了某些特征的子类(我不会在运行时这样做)。我知道用 scala (ClassUtil) 编写的工具,但这个工具很慢。我还知道一个用 java 编写的工具(比 ClassUtil 更快),但是如果我有选择的话,我宁愿不使用外部库 - 所以我的问题是:scala 2.10 支持解决我的问题吗?

0 投票
4 回答
4355 浏览

scala - 有没有办法在 for 理解中声明一个隐式 val?

我有一些嵌套调用 flatMap 的代码,如下所示:

通常,人们会将其写为 for 理解,这使代码更具可读性:

但我需要f隐含,我看不出用理解来做到这一点。有没有?当然我可以明确地传递 f,但这意味着再见漂亮的 DSL。我会对 Scala 2.9 和 2.10 的答案感兴趣。

为了清楚起见,我想做这样的事情,但它不会编译:

编辑:也许功能请求是个好主意?

EDIT2:这应该适用于可用于理解的所有类型,因此不仅适用于通常的集合类型,如Listor Seq,而且适用于Future.

0 投票
3 回答
483 浏览

scala - Scala 2.10 中的 __FUNC__ 宏

在 Scala 2.9.x 中,我编写了 func 函数,它返回了执行 func() 的函数的名称,就像FUNC C 预处理器宏一样。我知道在 Scala2.10 中我应该能够写出比抛出异常更优雅的东西来完成这项工作。

我该怎么做?在此先感谢您的帮助。

0 投票
3 回答
3974 浏览

scala - 将 Akka 的 Future[A] 转换为 Future[Either[Exception,A]]

Akka(或 Scala 2.10 的标准库中)是否有方法可以将Future[A]可能失败的 a 转换为 a Future[Either[Exception,A]]?我知道你会写

这似乎是一项常见的任务,我想知道我是否忽略了一些东西。我对 Scala 2.9/Akka 和 Scala 2.10 的答案很感兴趣。

0 投票
1 回答
837 浏览

scala - flatMap 行为在 2.10.0 中改变

我将一些代码从 2.9 转换为 2.10,遇到了意外的编译错误。这是最小的形式:

在 2.9.2 中,这可以正常工作:

在 2.10.0 中,我们得到一个错误:

但如果我明确地将内部结果转换为 aList或明确指定泛型类型,它在 2.10.0 中工作正常flatmap

有人可以向我解释一下 2.10 的变化是什么导致类型推断在 2.9 中没有在这里失败吗?

编辑:

再深入一点,我们可以看到问题源于 的行为差异collect

在 2.9.2 中:

在 2.10.0 中:

据推测,原因与Set不同,例如List,类型不变的事实有关。但是更完整的解释,尤其是给出这种改变的动机的解释,会很棒。

0 投票
2 回答
1789 浏览

scala - 类型安全堆栈和 Scala 2.10

在 scala 的 2.10 下载页面 ( http://www.scala-lang.org/downloads ) 上写着:

Scala 发行版也可以在 Typesafe 的一个简单的、预集成的堆栈中使用。只需从堆栈下载页面下载 Typesafe 安装程序

但是当我从http://typesafe.com/stack/download(当前版本是 2.0.2)下载它时,仍然有 Scala 版本 2.9.2(不是 2.10)。

我是从错误的页面下载类型安全堆栈,还是只是缺少 Scala 2.10?我找不到 scala 2.10 是否应该集成到当前版本的堆栈中的信息。

0 投票
1 回答
2319 浏览

scala - 在 Scala 2.10 中为所有集合设置并行级别?

tasksupport我了解如何通过可变字段(参见https://stackoverflow.com/a/5425354/82970)为单个并行集合设置并行度级别。

如何在 Scala 2.10 中为所有新的并行集合设置并行级别?

一个附属问题 ---tasksupport与并行集合相关联的是由它构建的新并行集合“继承”吗?(例如,使用take,map等)

0 投票
1 回答
302 浏览

scala - 使用 Scala 2.10 更新到 Eclipse Juno 后,多维数组声明失败

我最近更新到 Eclipse Juno,因此也更新到 Scala 2.10。我之前的代码可以完美运行,但是,在更新之后,我收到此行的“构造函数数组的参数过多”错误:

它应该代表一个二维数组。我想知道问题是什么,因为它以前一直在工作。当我运行项目(忽略错误)时,它不会编译,并且给我一个“找不到类”异常。

我在 OSX Lion 上使用 Scala 2.10 运行 Eclipse Juno。