Wikipedia Functional programming
ExpandDescendants
Properties