Folding over a node with folding
When entering a node:
node is executed with the current node. The function can stop the further traversal by returning
`Return _ or continue the traversal by returning
When leaving a node after traversing its sub nodes: When
`Continue _ and its subnodes are traversed, then
leave is executed.