Ir al contenido principal

The Promises of Functional Programming thoughts

The Promises of Functional Programming

Functional programming, although existing for quite some time now, haven´t grown up as much as the other languages (imperative and object-oriented) so to start learning a functional language when all your life has been around the other two languages can be confusing and difficult.

The differences are evident from the beginning, the syntax in Clojure for example, with all those parentheses, are frustrating to handle in the beginning, however, this text shows the benefits that the functional programming has and that make it worth to learn a new language with a completely different "way" of coding.

The main advantage that I agree with the reading is the benefits of concurrency and parallelism, functional programming doesn't use variables, so the main problems with these two things can be, in theory, be solved easily or avoided, however, like I said at the beginning of this entry, functional programming isn't as mature and developed to handle this, it is capable in theory, but, until now, there appears that no one has managed to develop a program that fully uses this potential, soon that program may come but considering that functional languages are not something new, I'm thinking that when that program comes it may be to late, quantic computing is rising and I think that it shall beat what functional programming might do.

Whether functional programming matures, or quantum computing gets popularized, there is still some time for that to happen so, in the meantime, it may be useful to fully exploit what functional programming can do.

From the main differences that I managed to spot and understand is the recursion and the meaning that a function has on this kind of programming, I liked and personally prefer the approach of recursion instead of loops, to call again the function instead of just repeating a part I think is easier to implement, may sound contradictory but depending on the approach used for the function it may be a good thing and simplify everything or do more more complex what on other languages may be easier.

Comentarios

Entradas más populares de este blog

Language as the Ultimate Weapon

Language as the Ultimate Weapon Regarding the question about "Why is the Nineteen Eighty-Four novel by George Orwell relevant to a student taking the Programming Language course?" I'm not entirely sure how it can be related but I'll do my best. On programming languages it is fairly common to hear a lot of names, Java, C#, Swift, among others; each person has it favorite and when we found that favorite we begin to have a sort of disgust against the others, we may see the pros of them but we focus more on their cons, we wish that our favorite language were the only one in existence and this may be good or bad, depending on each one. As the reading said, some people is more susceptible to some things than others, one may understand a programming language as if it were born with it but to other it may never get the hang of it but no because is dumb, his mind behaves different thanks to the language he chose. This variety in languages is good in which it allows for...

Rich Hickey on Clojure

Rich Hickey on Clojure Clojure and his ability to easily communicate with Java makes it the perfect contender for best language, being able to simply call Java code con Clojure code and looking that they work without trouble at start is something that is rarely seen but that when it does appear, is like when God decides to touch you with all his greatness. Programmers and enterprises have noticed this, that's why Clojure is one of the most well-paid languages on USA. Inheriting from LISP the investigation-oriented theme makes a language that cannot be managed by anyone but when mastered, it really shows its true potential, sadly this isn't enough for making LISP, Clojure or the functional programming in general a popular thing, although Clojure with its JVM implementation and macros seeks to fight the problems that stopped LISP from getting mainstream. Thanks to functions that Clojure has, it makes it way easier and direct to solve problems and to actually combine or to...

Pair Programming

Pair Programming It results outstanding to me that the idea of having a pair or a group of programmers working on the same computer is relatively new to the programming world, the phrase of "two heads are better than one" has been existing from a long time ago prior to computation and it is has been proven to work (also it is quite logical), so why pair programming hasn't shine as it's supposed to be? The only thing that disturbs pair programming is the human factor, humans change their mind but at the same time don't, if they have worked all their lives alone and the results have been good the change to a pair programming will be difficult, they'll think that they are superior than their comrade, the suggestions of the last one will be ignored mostly, no help will be asked, making the pair programming more of a hassle than a good programming method. Other thing that involves the human factor is the interaction with others, maybe we can get along with so...