A mini Scala utility library. Compatible with functional programming beginners. For the JVM and Scala.js.
It may help you understand how to use - and how to implement (looking at the code) - some popular functional programming features. Il also provides some useful utilities.
Hamsters is built for Scala 3 (3.3.x LTS) and cross-compiled for the JVM and Scala.js. The LTS line keeps it usable from Scala 2.13 projects thanks to TASTY/binary compatibility.
Currently, Hamsters supports :
-
Data validation
-
Default values for options (orEmpty)
-
Enum typeclass
-
Future Squash (simplifications for nested types)
-
Lens
-
mapN
-
Memoization
-
Monad transformers
-
NonEmptyList
-
Retry
-
Show (better toString)
libraryDependencies ++= Seq(
"io.github.scala-hamsters" %% "hamsters" % "4.0.0"
)For Scala.js :
libraryDependencies ++= Seq(
"io.github.scala-hamsters" %%% "hamsters" % "4.0.0"
)See hamsters-extensions for more information.
You can find the API documentation here.
To Laurence Beillaux who created the Hamsters logo.
