On 02/26/2016 12:41 PM, Rein Henrichs wrote:
> Pointfree is good for reasoning about *composition*. It can often be
> more readable than pointful code when the focus of the function is on
> composition of other functions. For example, take this function from
> Bird's /Pearls of Functional Algorithm Design/:
>
> boxes = map ungroup . ungroup . map cols . group . map group
>
> Compare the pointful version:
>
> boxes matrix = map ungroup (ungroup (map cols (group (map group matrix))))
>
> Readibility is subjective, but I think many people will agree that the
> pointfree version is easier to read.
>
Sure, but does anyone have any idea what that first version is supposed
to do? It would be much better to write it out: