Algorithms for Functional Programming - Stone, John David; Stone, John David (Springer Berlin Heidelberg : Imprint: Springer, 2018)