Ir al contenido principal

The Promises of Functional Programming

The article “The promises of functional programming” written by Konrad Hinsen highlights how software development has undergone significant advances as much as advances in technology and computational hardware, in the same way the article describes what is the essence of functional languages, what gives life and the reasons why they are created, in parallel it also explains the advantages of using it.
The first feature to highlight functional programming is in the use of functions, since unlike the use of mathematical functions, the variables are not part of the functional programming paradigm which according to the article is the first surprise faced to the ones that are starting to use functional programing.
One of the other features for the functional paradigm is the built-in fail safe mode against race conditions which is the lack of counter and side effects, and the possibility to define the language itself.
Hand in hand with this change also highlights the difference in the use of loop and recursion, which makes really a lot of contrast to a more common paradigm as it is the object oriented paradigm.
Parallelism is one of the most outstanding features of Functional Programming and is extremely important because it allows processes to be processed more quickly and easily, as well as responding to the fact that computers are becoming more and more powerful by integrating more cores and hardware each time more complex and with greater computational capacity.
From my point of view I believe in the potential that shows the use of functional programming since it is made to help scientific development, however I also consider that the elimination of variables becomes a challenge to be overcome when we first enter this programming paradigm; However, if this is overcome, developments with a greater degree of complexity can be achieved, as well as giving it great uses depending on more complicated requirements and models.

Comentarios

Entradas más populares de este blog

The semicolon wars

As a regular programmer, I sometimes get confused when at the time I’m using different languages for different projects, but ironically that’s how I get to know them better, in fact, that little confusion becomes less notorious. In this article the analogy of regular languages and programming languages are much more than a simple comparison and I think that it has something to do with my little experience using different programming languages for different projects. If we extrapolate that experience to another where someone can speak in many languages, we might get to notice that there are some kind of “reciprocation” between them and that might not be a simple coincidence. For many centuries, the language has been an extremely important part of the human development, since historically speaking it has immortally impressed in it little fragments of the meaning of that history; but that doesn’t end there, the language has been and stills being one of the most important tools to get...

Revenge of the nerds

When I was beginning the path to become a software engineer I tended to magnify the problems related to the things I wasn’t very much involved into, because of inexperience. The Analogy of the pointy-haired boss can apply to many people when they are neophytes to some regard. In the real world it’s something that have happened to me almost every time when the requirements for some software are very ambitious and a pseudo-informed client is involved. Everybody loves standards, it makes things easier and faster, but also is not always wat everyone needs for achieving their goals. Maybe the client wants the latest and greatest revision of a software that is commonly used for their branch in business, but maybe that version of that software implements functions and new paradigms that are no longer the principal need for the client. These kind of concerns are common because where there is money involved, there is always the need to have security and robustness, but in the software deve...