├── .gitignore ├── .travis.yml ├── FUTURE_PLANS.md ├── For_Facilitators.md ├── INSTRUCTOR_NOTES.md ├── LICENCE ├── README.md ├── applied-fp-course.cabal ├── bonus ├── README.md ├── hkd.md └── mtl.md ├── cabal.project ├── changelog.md ├── exe ├── Level01.hs ├── Level02.hs ├── Level04.hs ├── Level05.hs ├── Level06.hs └── Level07.hs ├── files ├── appconfig.json └── test.json ├── flake.lock ├── flake.nix ├── shell.nix ├── src ├── Level01 │ ├── Core.hs │ └── README.md ├── Level02 │ ├── Core.hs │ ├── README.md │ └── Types.hs ├── Level03 │ └── README.md ├── Level04 │ ├── Conf.hs │ ├── Core.hs │ ├── DB.hs │ ├── DB │ │ └── Types.hs │ ├── README.md │ ├── Types.hs │ └── Types │ │ ├── CommentText.hs │ │ ├── Error.hs │ │ └── Topic.hs ├── Level05 │ ├── AppM.hs │ ├── Conf.hs │ ├── Core.hs │ ├── DB.hs │ ├── DB │ │ └── Types.hs │ ├── README.md │ ├── Types.hs │ └── Types │ │ ├── CommentText.hs │ │ ├── Error.hs │ │ └── Topic.hs ├── Level06 │ ├── AppM.hs │ ├── Conf.hs │ ├── Conf │ │ ├── CommandLine.hs │ │ └── File.hs │ ├── Core.hs │ ├── DB.hs │ ├── DB │ │ └── Types.hs │ ├── README.md │ ├── Types.hs │ └── Types │ │ ├── CommentText.hs │ │ ├── Error.hs │ │ └── Topic.hs ├── Level07 │ ├── AppM.hs │ ├── Conf.hs │ ├── Conf │ │ ├── CommandLine.hs │ │ └── File.hs │ ├── Core.hs │ ├── DB.hs │ ├── DB │ │ └── Types.hs │ ├── README.md │ ├── Responses.hs │ ├── Types.hs │ └── Types │ │ ├── CommentText.hs │ │ ├── Error.hs │ │ └── Topic.hs └── Workshop │ └── NextLevels.md ├── stack.yaml ├── stack.yaml.lock └── tests ├── Test.hs └── doctests.hs /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/.gitignore -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/.travis.yml -------------------------------------------------------------------------------- /FUTURE_PLANS.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/FUTURE_PLANS.md -------------------------------------------------------------------------------- /For_Facilitators.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/For_Facilitators.md -------------------------------------------------------------------------------- /INSTRUCTOR_NOTES.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/INSTRUCTOR_NOTES.md -------------------------------------------------------------------------------- /LICENCE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/LICENCE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/README.md -------------------------------------------------------------------------------- /applied-fp-course.cabal: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/applied-fp-course.cabal -------------------------------------------------------------------------------- /bonus/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/bonus/README.md -------------------------------------------------------------------------------- /bonus/hkd.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/bonus/hkd.md -------------------------------------------------------------------------------- /bonus/mtl.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/bonus/mtl.md -------------------------------------------------------------------------------- /cabal.project: -------------------------------------------------------------------------------- 1 | packages: . 2 | 3 | tests: True 4 | documentation: False -------------------------------------------------------------------------------- /changelog.md: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /exe/Level01.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/exe/Level01.hs -------------------------------------------------------------------------------- /exe/Level02.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/exe/Level02.hs -------------------------------------------------------------------------------- /exe/Level04.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/exe/Level04.hs -------------------------------------------------------------------------------- /exe/Level05.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/exe/Level05.hs -------------------------------------------------------------------------------- /exe/Level06.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/exe/Level06.hs -------------------------------------------------------------------------------- /exe/Level07.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/exe/Level07.hs -------------------------------------------------------------------------------- /files/appconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/files/appconfig.json -------------------------------------------------------------------------------- /files/test.json: -------------------------------------------------------------------------------- 1 | {"foo":33} 2 | -------------------------------------------------------------------------------- /flake.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/flake.lock -------------------------------------------------------------------------------- /flake.nix: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/flake.nix -------------------------------------------------------------------------------- /shell.nix: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/shell.nix -------------------------------------------------------------------------------- /src/Level01/Core.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level01/Core.hs -------------------------------------------------------------------------------- /src/Level01/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level01/README.md -------------------------------------------------------------------------------- /src/Level02/Core.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level02/Core.hs -------------------------------------------------------------------------------- /src/Level02/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level02/README.md -------------------------------------------------------------------------------- /src/Level02/Types.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level02/Types.hs -------------------------------------------------------------------------------- /src/Level03/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level03/README.md -------------------------------------------------------------------------------- /src/Level04/Conf.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level04/Conf.hs -------------------------------------------------------------------------------- /src/Level04/Core.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level04/Core.hs -------------------------------------------------------------------------------- /src/Level04/DB.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level04/DB.hs -------------------------------------------------------------------------------- /src/Level04/DB/Types.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level04/DB/Types.hs -------------------------------------------------------------------------------- /src/Level04/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level04/README.md -------------------------------------------------------------------------------- /src/Level04/Types.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level04/Types.hs -------------------------------------------------------------------------------- /src/Level04/Types/CommentText.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level04/Types/CommentText.hs -------------------------------------------------------------------------------- /src/Level04/Types/Error.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level04/Types/Error.hs -------------------------------------------------------------------------------- /src/Level04/Types/Topic.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level04/Types/Topic.hs -------------------------------------------------------------------------------- /src/Level05/AppM.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level05/AppM.hs -------------------------------------------------------------------------------- /src/Level05/Conf.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level05/Conf.hs -------------------------------------------------------------------------------- /src/Level05/Core.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level05/Core.hs -------------------------------------------------------------------------------- /src/Level05/DB.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level05/DB.hs -------------------------------------------------------------------------------- /src/Level05/DB/Types.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level05/DB/Types.hs -------------------------------------------------------------------------------- /src/Level05/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level05/README.md -------------------------------------------------------------------------------- /src/Level05/Types.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level05/Types.hs -------------------------------------------------------------------------------- /src/Level05/Types/CommentText.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level05/Types/CommentText.hs -------------------------------------------------------------------------------- /src/Level05/Types/Error.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level05/Types/Error.hs -------------------------------------------------------------------------------- /src/Level05/Types/Topic.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level05/Types/Topic.hs -------------------------------------------------------------------------------- /src/Level06/AppM.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level06/AppM.hs -------------------------------------------------------------------------------- /src/Level06/Conf.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level06/Conf.hs -------------------------------------------------------------------------------- /src/Level06/Conf/CommandLine.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level06/Conf/CommandLine.hs -------------------------------------------------------------------------------- /src/Level06/Conf/File.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level06/Conf/File.hs -------------------------------------------------------------------------------- /src/Level06/Core.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level06/Core.hs -------------------------------------------------------------------------------- /src/Level06/DB.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level06/DB.hs -------------------------------------------------------------------------------- /src/Level06/DB/Types.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level06/DB/Types.hs -------------------------------------------------------------------------------- /src/Level06/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level06/README.md -------------------------------------------------------------------------------- /src/Level06/Types.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level06/Types.hs -------------------------------------------------------------------------------- /src/Level06/Types/CommentText.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level06/Types/CommentText.hs -------------------------------------------------------------------------------- /src/Level06/Types/Error.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level06/Types/Error.hs -------------------------------------------------------------------------------- /src/Level06/Types/Topic.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level06/Types/Topic.hs -------------------------------------------------------------------------------- /src/Level07/AppM.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level07/AppM.hs -------------------------------------------------------------------------------- /src/Level07/Conf.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level07/Conf.hs -------------------------------------------------------------------------------- /src/Level07/Conf/CommandLine.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level07/Conf/CommandLine.hs -------------------------------------------------------------------------------- /src/Level07/Conf/File.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level07/Conf/File.hs -------------------------------------------------------------------------------- /src/Level07/Core.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level07/Core.hs -------------------------------------------------------------------------------- /src/Level07/DB.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level07/DB.hs -------------------------------------------------------------------------------- /src/Level07/DB/Types.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level07/DB/Types.hs -------------------------------------------------------------------------------- /src/Level07/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level07/README.md -------------------------------------------------------------------------------- /src/Level07/Responses.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level07/Responses.hs -------------------------------------------------------------------------------- /src/Level07/Types.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level07/Types.hs -------------------------------------------------------------------------------- /src/Level07/Types/CommentText.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level07/Types/CommentText.hs -------------------------------------------------------------------------------- /src/Level07/Types/Error.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level07/Types/Error.hs -------------------------------------------------------------------------------- /src/Level07/Types/Topic.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Level07/Types/Topic.hs -------------------------------------------------------------------------------- /src/Workshop/NextLevels.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/src/Workshop/NextLevels.md -------------------------------------------------------------------------------- /stack.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/stack.yaml -------------------------------------------------------------------------------- /stack.yaml.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/stack.yaml.lock -------------------------------------------------------------------------------- /tests/Test.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/tests/Test.hs -------------------------------------------------------------------------------- /tests/doctests.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qfpl/applied-fp-course/HEAD/tests/doctests.hs --------------------------------------------------------------------------------