sábado, 20 de octubre de 2018

Language as the "ultimate weapon" in Nineteen eignty-four


1984, the novel that criticize more than just the restrict governments and the authoritarian state of his own dystopia, goes beyond and tries to make conscience in the readers about the importance of language in our way of thinking, or at least this is the premise of the article for reading this week. The language is crucial for each of us, to maintain the society running, that’s a good point for the article and the way that it’s explained to us as a think changer make more important to analyze our environment related to our speaking.

As is told to us by several authors here, the media and the language make a huge impact on our diary life, those manipulate our thinking, and our ability to communicate and to develop our mind. I think that as it’s showed to us in the book of Orwell that the power that implies the control over the words is just as high as the control of the memory and the fear among the population.

Other thing that seems interesting to me it’s the heavy focus on the memory and the use of the media to manipulate the history, the reaction of the people in front a situation like their country fighting constantly in a war, or to front the constant reduce of rations of chocolate or tobacco. The influence in the constant exposure of the media announcements to the protagonist of the books it’s the high that even at some point Smith has troubles remembering with what other super continent were the war conflict.

For my last thoughts I can say that it could be applicable not only for our diary life, but also to use it in our professional life, the more we can learn about different programming languages means the less we are tied to our own limitations and the more we can expand our thinking.

sábado, 13 de octubre de 2018

The roots of Lisp


For the article “The roots of Lisp” the title can give you great highlights about the writer’s topic, it’s about Lisp’s origins. Honestly, until today it was the most boring article that we read because I felt it extremely technical, but not giving any aggregated value for the class. I know that understanding the mathematical and logic behind Lisp is important, but not interesting at all and just some information and code, just like a user’s manual.

The first instances of the article explain the way that the seven primitive operations work, the arguments and the main usability for each operator, this part was a little reiterative considering that the knowledge we achieve to get during this semester is hardly focused on us to understand the functionality of Clojure, the evolution of Lisp. It’s remarkable that the explanations of the main concepts are that concise and precise, but the amount of knowledge that it’s pretended for us to understand in that little amount of space.

For the next part of the article is focused on the functions, and the way that the basic operators can be used for more complex operations. For this part it starts to get interesting, because we can see a more complex way of using more simple operations, but as it’s said, there is not a big difference between this and a C based language.

The interesting point comes when the author explains the evaluation function that makes the most interesting function. The evaluation of any function could be, not only useful, but also flexible at the time of getting computing problems solved. This is applied for our class in many ways, one of them being to make macros and define code to make more code. Even with this, I felt the article less powerful than the previous ones, and sharing something that we already know.

sábado, 6 de octubre de 2018

The promises of functional programming

At the beginning of the article we recapitulate the history of language programming and the approach of traditional thinking against the functional programming, for this I have to say that some true was told, I am studying Computer Science and until programming languages course I haven’t heard of the functional programming. The way that they present as a more robust and that was proven to be an easier language for testing make just even weirder to not being introduced to it before.

One of the most interesting things that the article have, at least in my opinion, is the development that it does around the parallel programming and the concurrency. This is a matter that is getting more and more strength with the years and the way that is explained as a better way of programming “functionally”, I think could have a real impact and we can get a lot of facilities with Clojure, for example.

By explaining some of the languages strengths with examples and in a very easy way to understand, the author can get his massage easier to the public, in this case, for the programmers to think of Lisp as a viable way for programming, not as an obsolete and old language that nobody understands. For example, when the author explains the way that the abstractions and the recursive functions are performed by this kind of language, it’s explicitly shown that it’s way easier than with the imperative programming. This shows not only to be a theoretical better way of seeing the programming, but also that it’s practically more efficient and even more understandable for our human thinking, not for the hardware ways.

As a conclusion I can say that even by looking at the practical comparison between the common programming and the functional one, it was proven time and time again to be better use the functional.

sábado, 22 de septiembre de 2018

Rich Hickey on Clojure


The first thing that is noticeable, at least for me, we are talking now about Clojure not about Lisp (Even when they’re similar) that may be not that impactful, but we’re learning Clojure not its parent, so makes me a little more comfortable.

The first differentiation that the interviewee find between Lisp and the discussed language is the data structures that can be used as fundamentals, in this case we can use not vectors and maps, not only lists. Topic that might not seem that important, but it is useful for some purposes.

Also, the concept that they talk about the nature of the language is interesting, when the aboard the topic of why Lisp didn’t become popular or mainstream Rich gives us a new perspective about the defects that he can find for Lisp, such as its isolation (because of the lack of libraries) and that it was designed for making hard and intense problems easier to solve. The macros appear again here when their talking about the differentiator of Lisp.

This great explanation about the “non-Object Oriented Programming” of Clojure, that you can find the functionality of the OOP not explicitly, but the idea could be found on Clojure. The way they explore a simple comparison between Java and Clojure, not only limited to the time and development capacity, but the way that an object can be mutable and in Object Oriented Programming the difference between Identity and State are currently hard to understand, and how Clojure manage this with the Data Structures.

One of the most interesting points for me is that the support for the values and the way that functional programming with the data structures and the concurrency against the use of the libraries with something like Java. In this way is one of the most curious points for studying Clojure.
Finally, this interview had my special attention because of the way that Rich Hickey expose Clojure with solid and well explain arguments that has also this technical strength, and even when is not my first language option, it could make me think of it as an option for my professional development.