OK, some examples in HOP might be contrived, but I think it is just because the author, MJD, is just trying to make the spectrum of possibilities as large as possible. It is up to you to use what you like and discard what you don't like.
There is (at least) one problem with that perspective:
Were the HOP examples written in any language that supported either: compile-time in-lining: or runtime JIT: then the abstractions that HOP uses would be trivially inconsequential to the real-world effectiveness of the solutions it proposes.
They aren't; ergo: it isn't.
No one with any real experience of using Perl to solve real-world, real-time, (ie. just 'real') problems; would propose/advocate using such tortuously incestuous, blatantly suboptimal, O'Woe solutions to such trivial problems as exampled in HOP.
As impressive as HOP appears to so many; there is no example in it that cannot be better -- more clearly; more maintainable; more efficiently -- coded in (real) Perl; rather than in its peculiar brand of Haskell-pretending-to-be-Lisp, trans-coded to Perl.
If you attempt to speak Dutch; or Russian; or Mandarin Chinese; whilst thinking and phrasing in English; the result is a grossly verbose, and ultimately, unintelligible mess.
Ditto, attempting to write Lispish Haskell using Perlish syntax.