I intended to switch repositories, but since this is the link I gave you, plesae focus on the "Budapest" directory.
This is a demo I use in my Functional Programming talks. You can see a version here. https://www.youtube.com/watch?v=rHmIf5xmKQg. However, I am always to evolving and have come to believe many of the patterns in this version of Master is sub-optimal (sort of crap).
So, please use this code selectively, and check back for updates.