Practicalities
If you’d like to set up a project that uses the libraries presented in
this book, you will need to use a recent version of Scala with
FP-specific features enabled (e.g. in build.sbt):
scalaVersion in ThisBuild := "2.12.6"
scalacOptions in ThisBuild ++= Seq(
"-language:_",
"-Ypartial-unification",
"-Xfatal-warnings"
)
libraryDependencies ++= Seq(
"com.github.mpilquist" %% "simulacrum" % "0.13.0",
"org.scalaz" %% "scalaz-core" % "7.2.25"
)
addCompilerPlugin("org.spire-math" %% "kind-projector" % "0.9.7")
addCompilerPlugin("org.scalamacros" % "paradise" % "2.1.1" cross CrossVersion.full)
In order to keep our snippets short, we will omit the import
section. Unless told otherwise, assume that all snippets have the
following imports:
import scalaz._, Scalaz._
import simulacrum._