├── .gitignore ├── .scalafmt.conf ├── README.md ├── project ├── Dependencies.scala ├── build.properties └── plugins.sbt └── src └── main ├── resources └── application.conf └── scala └── com └── github └── gvolpe ├── sbtb2018 ├── config.scala ├── demo1.scala ├── demo2.scala └── http │ ├── algebra.scala │ ├── domain.scala │ ├── errorhandler.scala │ ├── interpreter.scala │ ├── routes.scala │ ├── routesmtl.scala │ └── server.scala └── scalar2019 ├── classy ├── monaderror.scala └── monadreader.scala ├── console.scala ├── reader.scala ├── readerstate.scala ├── rio ├── demo.scala └── package.scala ├── state.scala └── tagless ├── alt ├── dependency.scala ├── instances.scala ├── laws.scala └── lawstest.scala ├── catsapp.scala ├── exp ├── clunky.scala └── cumbersome.scala ├── instances.scala ├── module.scala └── rioapp.scala /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/classy-optics/HEAD/.gitignore -------------------------------------------------------------------------------- /.scalafmt.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/classy-optics/HEAD/.scalafmt.conf -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/classy-optics/HEAD/README.md -------------------------------------------------------------------------------- /project/Dependencies.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/classy-optics/HEAD/project/Dependencies.scala -------------------------------------------------------------------------------- /project/build.properties: -------------------------------------------------------------------------------- 1 | sbt.version=1.2.8 2 | -------------------------------------------------------------------------------- /project/plugins.sbt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/classy-optics/HEAD/project/plugins.sbt -------------------------------------------------------------------------------- /src/main/resources/application.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/classy-optics/HEAD/src/main/resources/application.conf -------------------------------------------------------------------------------- /src/main/scala/com/github/gvolpe/sbtb2018/config.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/classy-optics/HEAD/src/main/scala/com/github/gvolpe/sbtb2018/config.scala -------------------------------------------------------------------------------- /src/main/scala/com/github/gvolpe/sbtb2018/demo1.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/classy-optics/HEAD/src/main/scala/com/github/gvolpe/sbtb2018/demo1.scala -------------------------------------------------------------------------------- /src/main/scala/com/github/gvolpe/sbtb2018/demo2.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/classy-optics/HEAD/src/main/scala/com/github/gvolpe/sbtb2018/demo2.scala -------------------------------------------------------------------------------- /src/main/scala/com/github/gvolpe/sbtb2018/http/algebra.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/classy-optics/HEAD/src/main/scala/com/github/gvolpe/sbtb2018/http/algebra.scala -------------------------------------------------------------------------------- /src/main/scala/com/github/gvolpe/sbtb2018/http/domain.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/classy-optics/HEAD/src/main/scala/com/github/gvolpe/sbtb2018/http/domain.scala -------------------------------------------------------------------------------- /src/main/scala/com/github/gvolpe/sbtb2018/http/errorhandler.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/classy-optics/HEAD/src/main/scala/com/github/gvolpe/sbtb2018/http/errorhandler.scala -------------------------------------------------------------------------------- /src/main/scala/com/github/gvolpe/sbtb2018/http/interpreter.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/classy-optics/HEAD/src/main/scala/com/github/gvolpe/sbtb2018/http/interpreter.scala -------------------------------------------------------------------------------- /src/main/scala/com/github/gvolpe/sbtb2018/http/routes.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/classy-optics/HEAD/src/main/scala/com/github/gvolpe/sbtb2018/http/routes.scala -------------------------------------------------------------------------------- /src/main/scala/com/github/gvolpe/sbtb2018/http/routesmtl.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/classy-optics/HEAD/src/main/scala/com/github/gvolpe/sbtb2018/http/routesmtl.scala -------------------------------------------------------------------------------- /src/main/scala/com/github/gvolpe/sbtb2018/http/server.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/classy-optics/HEAD/src/main/scala/com/github/gvolpe/sbtb2018/http/server.scala -------------------------------------------------------------------------------- /src/main/scala/com/github/gvolpe/scalar2019/classy/monaderror.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/classy-optics/HEAD/src/main/scala/com/github/gvolpe/scalar2019/classy/monaderror.scala -------------------------------------------------------------------------------- /src/main/scala/com/github/gvolpe/scalar2019/classy/monadreader.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/classy-optics/HEAD/src/main/scala/com/github/gvolpe/scalar2019/classy/monadreader.scala -------------------------------------------------------------------------------- /src/main/scala/com/github/gvolpe/scalar2019/console.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/classy-optics/HEAD/src/main/scala/com/github/gvolpe/scalar2019/console.scala -------------------------------------------------------------------------------- /src/main/scala/com/github/gvolpe/scalar2019/reader.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/classy-optics/HEAD/src/main/scala/com/github/gvolpe/scalar2019/reader.scala -------------------------------------------------------------------------------- /src/main/scala/com/github/gvolpe/scalar2019/readerstate.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/classy-optics/HEAD/src/main/scala/com/github/gvolpe/scalar2019/readerstate.scala -------------------------------------------------------------------------------- /src/main/scala/com/github/gvolpe/scalar2019/rio/demo.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/classy-optics/HEAD/src/main/scala/com/github/gvolpe/scalar2019/rio/demo.scala -------------------------------------------------------------------------------- /src/main/scala/com/github/gvolpe/scalar2019/rio/package.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/classy-optics/HEAD/src/main/scala/com/github/gvolpe/scalar2019/rio/package.scala -------------------------------------------------------------------------------- /src/main/scala/com/github/gvolpe/scalar2019/state.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/classy-optics/HEAD/src/main/scala/com/github/gvolpe/scalar2019/state.scala -------------------------------------------------------------------------------- /src/main/scala/com/github/gvolpe/scalar2019/tagless/alt/dependency.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/classy-optics/HEAD/src/main/scala/com/github/gvolpe/scalar2019/tagless/alt/dependency.scala -------------------------------------------------------------------------------- /src/main/scala/com/github/gvolpe/scalar2019/tagless/alt/instances.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/classy-optics/HEAD/src/main/scala/com/github/gvolpe/scalar2019/tagless/alt/instances.scala -------------------------------------------------------------------------------- /src/main/scala/com/github/gvolpe/scalar2019/tagless/alt/laws.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/classy-optics/HEAD/src/main/scala/com/github/gvolpe/scalar2019/tagless/alt/laws.scala -------------------------------------------------------------------------------- /src/main/scala/com/github/gvolpe/scalar2019/tagless/alt/lawstest.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/classy-optics/HEAD/src/main/scala/com/github/gvolpe/scalar2019/tagless/alt/lawstest.scala -------------------------------------------------------------------------------- /src/main/scala/com/github/gvolpe/scalar2019/tagless/catsapp.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/classy-optics/HEAD/src/main/scala/com/github/gvolpe/scalar2019/tagless/catsapp.scala -------------------------------------------------------------------------------- /src/main/scala/com/github/gvolpe/scalar2019/tagless/exp/clunky.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/classy-optics/HEAD/src/main/scala/com/github/gvolpe/scalar2019/tagless/exp/clunky.scala -------------------------------------------------------------------------------- /src/main/scala/com/github/gvolpe/scalar2019/tagless/exp/cumbersome.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/classy-optics/HEAD/src/main/scala/com/github/gvolpe/scalar2019/tagless/exp/cumbersome.scala -------------------------------------------------------------------------------- /src/main/scala/com/github/gvolpe/scalar2019/tagless/instances.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/classy-optics/HEAD/src/main/scala/com/github/gvolpe/scalar2019/tagless/instances.scala -------------------------------------------------------------------------------- /src/main/scala/com/github/gvolpe/scalar2019/tagless/module.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/classy-optics/HEAD/src/main/scala/com/github/gvolpe/scalar2019/tagless/module.scala -------------------------------------------------------------------------------- /src/main/scala/com/github/gvolpe/scalar2019/tagless/rioapp.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/classy-optics/HEAD/src/main/scala/com/github/gvolpe/scalar2019/tagless/rioapp.scala --------------------------------------------------------------------------------