The Promises of Functional Programming

After reading "The Promises of Functional Programming" by Konrad Hinsen, I found some interesting parts of the reading and with which I agree. Konrad says that there is a big future if people use functional programming languages. 

Konrad Hinses explains some disadvantages of using functional programming languages which are very important and interesting. Functional programming has advantages for concurrent and parallel programming and we can see those differences clearly with Clojure. First, the paradigm of functional programming can be a little difficult if you have been programming on the object-oriented paradigm, for example, learning the mathematical structure of functional programming might be hard, such as stop using loops and instead use recursion for the iterations, also high-order functions is also difficult to learn and understand. Functional programming languages let you write more robust software and with functional programming languages, you don't use variables.

The evolution in hardware is something that has allowed a better performance, a clear example of this is the trend of parallelism and concurrency in CPUs. Since CPUs have more cores the importance of implementing parallelized code is now bigger and also the importance of using functional programming languages because you don't have to be modifying variables or things like that, those programs also have a more straightforward structure.

I can finally say that functional programming language paradigm is very powerful and if people take advantage of it people will have a better future in programming like making programs that are easier to implement and are parallelizable. But there is something very important, we must know where to make the changes from an object-oriented paradigm to the functional programming paradigm. Functional programming popularity has increased over the years and since not many people know or work with it I am pretty sure that if it is taught in schools many people will be better programmers.

References: 

- K. Hinsen. (2009). The Promises of Functional Programming. Scientific Programming. Available at: http://webcem01.cem.itesm.mx:8005/s201813/tc2006/the_promises_of_functional_programming.pdf

Comments

Popular posts from this blog

The Roots of Lisp

Rich Hickey on Clojure