Skip to content

atnos-org/eff

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

eff

Join the chat at https://gitter.im/atnos-org/eff Maven Central

Extensible effects are an alternative to monad transformers for computing with effects in a functional way. This library is based on the "free-er" monad and extensible effects described in Oleg Kiselyov in Freer monads, more extensible effects.

You can learn more in the User Guide:

You can also check out this presentation at flatMap Oslo 2016 (slides).

Installation

Eff is published for Scala 3. eff core is available for the JVM, ScalaJS and scala-native. Sbt dependency:

// check maven badge above for latest version
libraryDependencies += "org.atnos" %% "eff" % "7.0.6"

// for Scala 3.3.x
scalacOptions += "-Ykind-projector"

// for latest Scala 3
scalacOptions += "-Xkind-projector"

Contributing

eff is a Typelevel project. This means we embrace pure, typeful, functional programming, and provide a safe and friendly environment for teaching, learning, and contributing as described in the Scala Code of Conduct.

Feel free to open an issue if you notice a bug, have an idea for a feature, or have a question about the code. Pull requests are also gladly accepted.

Extensions

Modules in this repository

External

  • eff-zio eff extension for ZIO effects.