├── .gitignore ├── README.md ├── doc ├── LICENSE └── monad-transformers.pdf └── workshop ├── exercises ├── LICENSE ├── Setup.hs ├── app │ ├── BasicEvaluator.hs │ ├── CalcDiscount.hs │ └── EvaluatorTypes.hs ├── exercises.cabal ├── run.sh └── test │ └── Spec.hs ├── monadblender ├── LICENSE ├── Setup.hs ├── app │ ├── MonadBlenderSample.hs │ └── ReaderBlender.hs ├── monadblender.cabal ├── run.sh └── src │ └── MonadBlender.hs ├── samples ├── LICENSE ├── Setup.hs ├── app │ ├── FlippedReaderSample.hs │ ├── SpecialFunctionsSamples.hs │ └── StackingSamples.hs ├── run.sh └── samples.cabal ├── solutions ├── LICENSE ├── app │ ├── CalcDiscountSolution.hs │ └── stepbystep │ │ ├── BasicEvaluator.hs │ │ ├── EnvironmentDependentEvaluator.hs │ │ ├── EvaluatorTypes.hs │ │ ├── GracefulEvaluator.hs │ │ ├── IOEvaluator.hs │ │ ├── LiftingLoggingEvaluator.hs │ │ ├── LoggingEvaluator.hs │ │ ├── MonadicEvaluator.hs │ │ ├── ProfilingEvaluator.hs │ │ └── README.md ├── run.sh └── solutions.cabal └── stack.yaml /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/azadbolour/transformersworkshop/HEAD/.gitignore -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/azadbolour/transformersworkshop/HEAD/README.md -------------------------------------------------------------------------------- /doc/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/azadbolour/transformersworkshop/HEAD/doc/LICENSE -------------------------------------------------------------------------------- /doc/monad-transformers.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/azadbolour/transformersworkshop/HEAD/doc/monad-transformers.pdf -------------------------------------------------------------------------------- /workshop/exercises/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/azadbolour/transformersworkshop/HEAD/workshop/exercises/LICENSE -------------------------------------------------------------------------------- /workshop/exercises/Setup.hs: -------------------------------------------------------------------------------- 1 | import Distribution.Simple 2 | main = defaultMain 3 | -------------------------------------------------------------------------------- /workshop/exercises/app/BasicEvaluator.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/azadbolour/transformersworkshop/HEAD/workshop/exercises/app/BasicEvaluator.hs -------------------------------------------------------------------------------- /workshop/exercises/app/CalcDiscount.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/azadbolour/transformersworkshop/HEAD/workshop/exercises/app/CalcDiscount.hs -------------------------------------------------------------------------------- /workshop/exercises/app/EvaluatorTypes.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/azadbolour/transformersworkshop/HEAD/workshop/exercises/app/EvaluatorTypes.hs -------------------------------------------------------------------------------- /workshop/exercises/exercises.cabal: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/azadbolour/transformersworkshop/HEAD/workshop/exercises/exercises.cabal -------------------------------------------------------------------------------- /workshop/exercises/run.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/azadbolour/transformersworkshop/HEAD/workshop/exercises/run.sh -------------------------------------------------------------------------------- /workshop/exercises/test/Spec.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/azadbolour/transformersworkshop/HEAD/workshop/exercises/test/Spec.hs -------------------------------------------------------------------------------- /workshop/monadblender/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/azadbolour/transformersworkshop/HEAD/workshop/monadblender/LICENSE -------------------------------------------------------------------------------- /workshop/monadblender/Setup.hs: -------------------------------------------------------------------------------- 1 | import Distribution.Simple 2 | main = defaultMain 3 | -------------------------------------------------------------------------------- /workshop/monadblender/app/MonadBlenderSample.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/azadbolour/transformersworkshop/HEAD/workshop/monadblender/app/MonadBlenderSample.hs -------------------------------------------------------------------------------- /workshop/monadblender/app/ReaderBlender.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/azadbolour/transformersworkshop/HEAD/workshop/monadblender/app/ReaderBlender.hs -------------------------------------------------------------------------------- /workshop/monadblender/monadblender.cabal: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/azadbolour/transformersworkshop/HEAD/workshop/monadblender/monadblender.cabal -------------------------------------------------------------------------------- /workshop/monadblender/run.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/azadbolour/transformersworkshop/HEAD/workshop/monadblender/run.sh -------------------------------------------------------------------------------- /workshop/monadblender/src/MonadBlender.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/azadbolour/transformersworkshop/HEAD/workshop/monadblender/src/MonadBlender.hs -------------------------------------------------------------------------------- /workshop/samples/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/azadbolour/transformersworkshop/HEAD/workshop/samples/LICENSE -------------------------------------------------------------------------------- /workshop/samples/Setup.hs: -------------------------------------------------------------------------------- 1 | import Distribution.Simple 2 | main = defaultMain 3 | -------------------------------------------------------------------------------- /workshop/samples/app/FlippedReaderSample.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/azadbolour/transformersworkshop/HEAD/workshop/samples/app/FlippedReaderSample.hs -------------------------------------------------------------------------------- /workshop/samples/app/SpecialFunctionsSamples.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/azadbolour/transformersworkshop/HEAD/workshop/samples/app/SpecialFunctionsSamples.hs -------------------------------------------------------------------------------- /workshop/samples/app/StackingSamples.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/azadbolour/transformersworkshop/HEAD/workshop/samples/app/StackingSamples.hs -------------------------------------------------------------------------------- /workshop/samples/run.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/azadbolour/transformersworkshop/HEAD/workshop/samples/run.sh -------------------------------------------------------------------------------- /workshop/samples/samples.cabal: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/azadbolour/transformersworkshop/HEAD/workshop/samples/samples.cabal -------------------------------------------------------------------------------- /workshop/solutions/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/azadbolour/transformersworkshop/HEAD/workshop/solutions/LICENSE -------------------------------------------------------------------------------- /workshop/solutions/app/CalcDiscountSolution.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/azadbolour/transformersworkshop/HEAD/workshop/solutions/app/CalcDiscountSolution.hs -------------------------------------------------------------------------------- /workshop/solutions/app/stepbystep/BasicEvaluator.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/azadbolour/transformersworkshop/HEAD/workshop/solutions/app/stepbystep/BasicEvaluator.hs -------------------------------------------------------------------------------- /workshop/solutions/app/stepbystep/EnvironmentDependentEvaluator.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/azadbolour/transformersworkshop/HEAD/workshop/solutions/app/stepbystep/EnvironmentDependentEvaluator.hs -------------------------------------------------------------------------------- /workshop/solutions/app/stepbystep/EvaluatorTypes.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/azadbolour/transformersworkshop/HEAD/workshop/solutions/app/stepbystep/EvaluatorTypes.hs -------------------------------------------------------------------------------- /workshop/solutions/app/stepbystep/GracefulEvaluator.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/azadbolour/transformersworkshop/HEAD/workshop/solutions/app/stepbystep/GracefulEvaluator.hs -------------------------------------------------------------------------------- /workshop/solutions/app/stepbystep/IOEvaluator.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/azadbolour/transformersworkshop/HEAD/workshop/solutions/app/stepbystep/IOEvaluator.hs -------------------------------------------------------------------------------- /workshop/solutions/app/stepbystep/LiftingLoggingEvaluator.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/azadbolour/transformersworkshop/HEAD/workshop/solutions/app/stepbystep/LiftingLoggingEvaluator.hs -------------------------------------------------------------------------------- /workshop/solutions/app/stepbystep/LoggingEvaluator.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/azadbolour/transformersworkshop/HEAD/workshop/solutions/app/stepbystep/LoggingEvaluator.hs -------------------------------------------------------------------------------- /workshop/solutions/app/stepbystep/MonadicEvaluator.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/azadbolour/transformersworkshop/HEAD/workshop/solutions/app/stepbystep/MonadicEvaluator.hs -------------------------------------------------------------------------------- /workshop/solutions/app/stepbystep/ProfilingEvaluator.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/azadbolour/transformersworkshop/HEAD/workshop/solutions/app/stepbystep/ProfilingEvaluator.hs -------------------------------------------------------------------------------- /workshop/solutions/app/stepbystep/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/azadbolour/transformersworkshop/HEAD/workshop/solutions/app/stepbystep/README.md -------------------------------------------------------------------------------- /workshop/solutions/run.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/azadbolour/transformersworkshop/HEAD/workshop/solutions/run.sh -------------------------------------------------------------------------------- /workshop/solutions/solutions.cabal: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/azadbolour/transformersworkshop/HEAD/workshop/solutions/solutions.cabal -------------------------------------------------------------------------------- /workshop/stack.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/azadbolour/transformersworkshop/HEAD/workshop/stack.yaml --------------------------------------------------------------------------------