This directory contains files related to the August exam of the course Advanced Functional Programming (7.5 hec), Spring 2014 TDA342 / DIT260 Patrik Jansson The exam questions are in AFP_exam_2014-08.pdf And the three solutions are in DSL/API.hs, DSP/Common.hs, DSL/Derived.hs, DSL/Prop.hs, DSP/Shallow.hs, DSL/Deep.hs Spec.hs Types.hs Learning outcomes of the course: DSL: design embedded domain specific languages DSL.Concepts: (abstract) syntax, semantics, ... DSL.Implement: implement EDSLs in Haskell (as combinator libraries) Types: read, understand and extend Haskell programs which use advanced type system features Types.Class: type classes, newtypes, deriving, ... Types.GADT: (generalised) algebraic datatypes & type families Types.HOT: functors, monads and monad transformers Spec: use specification based development techniques Spec.Test: formulate and test properties about the program Spec.Prove: reason about correctness of functional programs Spec.Trans: transform programs on the basis of reasoning Expl: explain and discuss the above topics