and all of this is generalised in recursion scheme...
# arrow
p
and all of this is generalised in recursion schemes