Mathematica Functional Programming Vs Procedural