This is not at all lazy evaluation. That's something completely independent.
In Haskell, this pattern usually occurs together with combinators. But combinators don't require that you mimic some other shape of computation. (I would perhaps call that mimicking some form of 'punning'.)