miércoles, 30 de enero de 2019

The Promises of Fuctional Programming-Entry

The Promises of Fuctional Programming

The way of develop software has evolved along with the hardware that substains it. As the article mentions "We moved from machine code to assembly languages and then problem-oriented programming, which have evolved to integrate techniques such as structural and object-oriented programming.We went from monolithic programs via separately compilable modules and libraries to software component technologies. 

Following the line of finding new alternatives a different approach was developed as a mathematical theory in the 1930's (Alonzo Church’s λ-calculus) and as a programming technique in the 1950s (John McCarthy's Lisp language).

So on one hand we have the functional programming which was harder for the hardware to compile and requieres a lot of learning and unlearning, and on the other hand the imperative programming (the traditional one) easier to compile into efficient machine code. The functional programming was designed for another type of operations like calculus whereas the imperative programming could be more "general"


On recent years there has been an increase on people interested in functional programming because of the advantages that this paradigm provides for concurrent and parallel programming. It is also suggested that functional programs are more robust and easier to test than imperative ones.


The most recent Lisp dialect is Clojure that sets itself apart by three features: it has four highly optimized data structures (lists, vectors, maps, and sets) designed for pure functional programming, it offers extensive support for concurrency, and it was designed for the Java Virtual Machine with the goal of easy interoperability with other JVM languages, including Java itself. 


Functional programming appears as the answer to some of the operations academics couldn't accomplish with the imperative programming. In recent years more a more people have chosen functional programming because of the way this paradigm manages concurrent and parallel programming among other advantages. In the end it's always good to have diversity even in programming paradigms.






miércoles, 23 de enero de 2019

The Semicolon Wars- Entry

The Semicolon Wars-.

It's so wise to compare human languages with programming languages because of the similarities, as with the languages there is not a superior or better programming language there are just different ways of reaching an objective and as the Author says "linguistic diversity is a cultural resource to be nurturedand and preserved, much like biodiversity". It's totally okay to have so many languages.

There are 3 main paradigms in programming: The imperative which practically is direct like "do this, do that, etc"., functional language which is more like manipulating a mathematic expression, and of course the object oriented which bind together imperative commands forming objects with certain level of abstraction. Also it it's mention the difference between low level languages and high level, giving us more context about the variety of programming languages and why it's so essential.

But which language should be your favorite?, Does this depends on the area of your profession?, for example: cobol was first made for bussiness, Fortran for Scientist Computing. You should first know the strong aspects of a programming language, but there is more.

So, is there a programming language  that could be consider the best?, for that i would like to ask, is there a human languge that could be consider the best? Hard question? This is not a competition it's more like a personal decision, you choose the language in where you are more experienced or simply the one you like it because you feel safe using it. Anyway that doesn't exclude you from using other languages, it's so useful to have several languages.

The article made me reaffirm some thoughts about the diversity of programming languages, and of course that semicolon war about the best programming language which every IT student has experienced at least once.


martes, 15 de enero de 2019

Introduction Beto

Hey there,
I'm Beto Vas, I'm from the State of Mexico, I'm currently studying Computer Systems Engineering.
I Don't bite (most of the times), you can talk me, maybe we have things in common.

My expectations about this course are varied, I really hope to learn a lot and of course pass this class, have a fun time, etc.

I really love: art, technology and travel. I'm a passionate reader. I really like listening to music, playing videogames,etc.

I have recently started to read a classic on the western literature "The Great Gatsby" which is a real masterpice. Also I have recently enjoy the serie "Black Mirror" which is perfect 'cause it shows you the bad aspects of technologies we though will be good to create.

I'm currently listening a lot of "Mago de Oz" a rock band from my childhood.

Well, bye :D