Functional programming
Declarative programming
Anamorphism
Fold
Unfold
Origami
Yoshizawa-Randlett system
Software engineering