相关疑难解决方法(0)

为什么导入类型类实例不再需要 import cats.implicits._ ?

在 Cats 2.1.x 中,类型类实例被引入范围内import cats.implicits._

scala> import cats.Show
import cats.Show

scala> Show[Int].show(42)
<console>:13: error: could not find implicit value for parameter instance: cats.Show[Int]
       Show[Int].show(42)
           ^

scala> import cats.implicits._
import cats.implicits._

scala> Show[Int].show(42)
res1: String = 42
Run Code Online (Sandbox Code Playgroud)

然而在 Cats 2.2.0中,它无需import cats.implicits._例如

scala> import cats.Show
import cats.Show

scala> Show[Int].show(42)
val res0: String = 42
Run Code Online (Sandbox Code Playgroud)

发生了什么变化以及从现在开始我们应该如何使用导入?

import scala implicit typeclass scala-cats

4
推荐指数
1
解决办法
1543
查看次数

值 YpartialUnification 不是 scala.tools.nsc.Settings 的成员

我正在尝试在 REPL 中运行 scala cats。按照 cat 的指示,我安装了 ammonite REPL 并将以下导入放入predef.sc

nterp.configureCompiler(_.settings.YpartialUnification.value = true)
import $ivy.`org.typelevel::cats-core:2.2.0-M1`, cats.implicits._
Run Code Online (Sandbox Code Playgroud)

我在运行时遇到此错误amm

predef.sc:1: value YpartialUnification is not a member of scala.tools.nsc.Settings
val res_0 = interp.configureCompiler(_.settings.YpartialUnification.value = true)
                                                ^
Compilation Failed
Run Code Online (Sandbox Code Playgroud)

scala scala-cats ammonite

2
推荐指数
1
解决办法
225
查看次数

标签 统计

scala ×2

scala-cats ×2

ammonite ×1

implicit ×1

import ×1

typeclass ×1