Mathematica Functional Programming Concepts