Computer programming
Functional languages
Constraint Handling Rules
Constraint logic programming
Pure
Monad
Multiset
Declarative programming
Software engineering
Constraint programming