User defined function, recursion and passing self along

Thanks for sharing this great trick! On the one hand, wished I could have come up with it myself (as I did something like it) but at the same time it’s genius. Had to adapt it a bit as Map.merge/3 expects a function with arity 3.

If anyone is interested, this is the commit.

Thanks a ton once again!