
Hello café! I am looking for some kind of lesson plans, lecture notes or other inspiring materials that would help me construct an advanced course in Software Engineering with Haskell — or other pure functional technologies — with the aim to teach this art to myself and others to the highest level of excellence. I know there is a choice of published books with «Haskell» in the title, and I shall draw from them. However, I am not super happy about any of the books I looked into so far, because they are so concrete. They would pick a bunch of best practices and some well known libraries and write about that in excruciating detail. It seems a published book cannot afford to say anything abstract or outlandish. Assorti lecture notes I could find on the Internet are more diverse and fresh, but I have not found many and whichever I found are all somewhat beginner level, they talk about Haskell's syntax and evaluation more than about Software Engineering overall. The stuff I wish to see would be like: * Continuation passing style. * Recursion schemes. * Polynomial functors. * The nature of `IO`. * Evaluation of Haskell on a graph machine. * The expression problem. In short, stuff that transcends specific libraries and concrete code. In the ideal, I wish there was a literature review that refers to foundational research. I do not expect ready-made perfection; please send me whatever you think would help, even your brief thoughts and wishes.