add Functional Programming section