Skip to main content

Dick Gabriel on Lisp

Lisp is one of the first functional programming languages in the world. This paradigm is very different from programming languages and paradigms that we frequently use. In this podcast, Dick Gabriel tells us how was his experience with Lisp and how it still is the most important base for other functional languages. 

In the first minutes, Dick Gabriel tells us all about his background and his personal interest in functional programming languages. Also, he comments on how Lisp works through functions and his abstraction level. For example, the main form in which Lisp works is receiving arguments in its functions and returning values. It is interesting to know that Lisp is used by programmers to construct artificial intelligence performance to know how life or humans works and their limitations. These kind of examples are a little bit simple to represent in functional languages as Lisp. 

Dick Gabriel in the podcast tells us how Lisp, despite of being an elegant programming language in many cases, it is not as friendly as we would think. We are familiarized with programming languages in which it is necessary to write a high amount of lines, in contrast, Lisp does not work in this way. The amount of lines necessary to write a simple or complex program in Lisp, being a functional language, are considerably few.

Lisp avoids us the constant use of brackets or curly brackets. Programming languages as Java, C#, C, C++ need to use brackets often and this type of things complicate the program syntax and the legibility. However, a programming language as Lisp that only works with parenthesis, lessens the reading difficulty of a program.

Finally, Lisp, being a compact language and strong type, is good for reuse, work, test and so on, but it is a little complicate to write and understand. Therefore, it is important to try to spend a lot of time enhancing our knowledge in Lisp. After some hours, days and weeks, it is posible that our comprehension in Lisp and in other functional programming languages will be better than we were at the beginning in these kind of programming languages.


Reference 

Markus (Host). (2008, January 2). Episode 84. Dick Gabriel on Lisp [Audio podcast]. Retrieved from http://www.se-radio.net/2010/03/episode-158-rich-hickey-on-clojure/

Comments

Popular posts from this blog

Language as the “Ultimate Weapon”

The novel of 1984 is one of my favorite book because it reflect a future that can be possible in this time. In the book we read so many reference about the reality, language, war, peace, ignorance and other importante topics that currently they continue causing important repercussion in our days. Besides, George Orwell mention us what type of weapons use the government to stop the opposition and how they control the reality through the telescreen and their message to all society.  In Language as the "Ultimate Weapon" tell us an analysis about the novel of George Orwell: 1984. Without a doubt the language take an importante role in a fiction 1984, however nowadays too. It possible that the governments don't try to control our language or try to create a new weapon through of the language, but it could be kindred to the programming languages. In this blog I don't make an analysis or an opinion about the novel 1984, but I want to make a reflection about programmin...

Roots of Lisp

Lisp is part of the construction of Clojure and the programming language that it took as a reference scheme. So it is important to know which are the roots of Lisp because we will know how and why the instruction were build and for what propose.  Firstly, we will talk about the seven primitive operators. These operators work to modify lists or to convert symbols in lists. They are called primitive for their easy way to convert symbols or lists and to create new result which are more suitable. However, this not the only advantages of a functional programming language as Lisp. We can create functions that after we could detonate for specific aplicables. It is unbelievable how Lisp works, for example, creating new functions with singular seven primitive operators could be a complex activity but in some cases the only limitation is our creativity of creating new functions.  The eval functions is another great examples of how we can create a complex function with only ...

About Clojure

In this podcast we listen to Rich Hickey, the creator of Clojure, talking about which were the main characteristics about it. Clojure is an important tool and programming language because it is a dynamic program language for JVM. This advantage allows Clojure to be adaptable for any host platform, concurrency, functional and based on Lisp. Although Lisp is a simple and elegant programming language, it is not known due to that it is studied individually, contrary to what we would think about this language.  Even with these particularities, Clojure keeps being a great tool to program in. For example, we can create programs that  are writing programs, we can handle a high level of function abstraction and we can benefit from its access to all Java libraries. It could be complicate coding everything with list but in Clojure, we also have data structures as vectors and maps. Clojure looks like a simple program in contrast to Java and its syntax, although the abstraction of Clo...