Post a Comment
I've only recently started learning Lisp. (This is by virtue of spending hours each day coding Scala, and all of the available Scala IDE plugins being terrible; Emacs + Yasnippet + Ensime, however, rocks.)
What a wonderful, wonderful language Lisp is. Years ahead of its time and a joy to work with.
Well, I'm really having a blast learning it but I'd disagree (albeit slightly) on both points.
I find it clean in the sense that the logic behind Lisp code is very intuitive but the forest of parens makes it a bit difficult to read at times.
And, although this is ludicrously suggestive, I'm not sure its as powerful a language as more modern functional languages either. I find Haskell, Erlang, and Scala in particular to be more expressive (and hence more powerful in my opinion) than Lisp.
Then again, I still know nowhere near as much about Lisp as I'd like to so I fully expect my opinions to change entirely in about a month. ;-)
None of those non-AI languages are as powerful as Lisp, actually Haskell is a purely functional language that is primarily focused towards improving applied type theory and automated theorem proving, Erlang is primarily focused on fault-tolerance, and Scala is many focused on JVM scripting.
None of these systems are as powerful as Lisp because Lisp is focused on creating AI, rather then solving specific programming problems. I do not mean to imply that Lisp is better then any of these languages, those languages are fantastic in their own domains, however, they do not have the power of adapting to any domain of your choosing, which is present in Lisp. See Of Lisp Macros and Washing Machines for more.
Edited 2011-10-27 03:42 UTC
So how's that AI creation going along?
As a matter of fact, most of ~AI systems in practical (or Watson-like) use seems to be written in non-Lisp (the years of Lisp domination in this field possibly even being a time of very inaccurate perceptions in the style of "real AI, any year now")
While true, that doesn't mean we shouldn't commemorate them with a little tribute acknowledging their achievements.
People like John McCarthy and Denis Richie shaped the computing landscape with technology we now take for granted. So I think the least an IT news site such as this one can do is offer up an article on their passing.
Sure, why should we cry for Steve Jobs and not have a bit of respect for the man who invented the first functionnal programming language, and then invented the garbage collector system, a technology which is still used a lot, in Java for example.
Note that I don't want to bash Apple when saying that. I just mean that this guy needs a lot of respect for what he contributed to modern computing.
Fascinating, and also a bit sad, to note only 9 comments nearly 12 hours since the posting of the news. The posting about the passing of Steve Jobs was approaching the 100 comments after that much time(if I remember well).
Then again, many of us got a refresh of who was Steve Jobs and what he did through the extensive media coverage of the Apple showcases of new products.
Neither Denis Richie nor John McCarthy had this much exposure in the general public. For many, they were names of pioneers encountered whenever starting to learn C or LISP.
LISP and all those parentheses:
->(setq sunset-of-this-era (passing-of-pioneers (October 2011)))
("Steve Jobs" "Denis Richie" "John McCarthy" "Many Others")
->(setq dawn-of-next-era (time-warp-one-generation-ahead (October 2011)))
nil
We do not know yet who will be revered to the same extent one generation from now!
Ultimately, in broader terms, it's quite sad how quickly we forget the dead (while liking to think of ourselves something quite the contrary).
Without checking, quick, tell the date of birth (maybe approximate to a decade), ~country, language, number of children, social strata of your great-great-great-great-grandmother (the side of mother, grandfather, great-grandfather, g-g-grandmother, g-g-g-grandfather) - "just" the things which determined most of her.
And some deaths are much more suitable for "grief porn" ( http://en.wikipedia.org/wiki/Mourning_sickness ) than others, than the vast majority of them (too bad I'll most likely be long dead before people get some perspective about... the dead; if ever) which are just ignored.
Googling human deaths rate per second gives 1.8 - two people dying with every heartbeat of yours, around 10 with every breath (and apparently, a child every 4 seconds http://www.globalissues.org/article/715/today-21000-children-died-a... ); this site http://www.transhumanism.org/resources/deathrate.htm has nice counter. Apparently, largely ( http://en.wikipedia.org/wiki/List_of_causes_of_death_by_rate#Malnut... ) from causes essentially mocked by societies with skyrocketing obesity rates (NVM general consumptionism)
Or consider the popular myth "more of us are alive than have ever lived" - simply ignoring the 100+ billion (most of serious estimates _start_ at this number) dead homo sapiens sapiens.
Yes, many would dismiss how we overlook all of the above by words boiling down to "those are lesser people" - well, very large part of what made John McCarthy came from the random accidents of his birth and early experiences beyond his control.
At least there's some chance that, by remembering his accomplishments, we could better realize the circumstances and conditions leading to such fruitful environments (which should be useful in the future) ...but I'm afraid this doesn't typically happen (especially if we remember mostly on such occasions, not ~always)
What a shame. I too have been hacking on Clojure (a lisp dialect) for the last year or so in my spare time. It has truly been an enlightening experience, and I am indebted to McCarthy (and Steve Russell )
The idea that code is data and data is code sounds simple (and a bit like ouroboros), but once you start "seeing" that the functionality and behavior of code is really just the structure of your data, it really opens up how you think about computing.
Clojure (and by extension other lisps/schemes) has become my favorite programming language, and I know a few (c, c++, java, python, perl, and to some degree scala, ruby, javascript, labview and C#)
Edited 2011-10-27 01:12 UTC
Terrific guy, he must have been in his 70s then and was sharp as a tack.
Functional programming always seemed more natural to me, or at least it was easier to translate between the math and algorithmic representation of the solution for the machine. So I have always enjoyed hacking in LISP, and Scheme in particular.
McCarthy made fundamental theoretical discoveries and contributions to CS. RIP.
Hi guys - this is indeed sad month.
I'm learning python and my quest took me to a little known project called open courseware.
I'm currently following computer science MIT 6.001
google this and enjoy the joys of lisp
you will not regret this even if you watch only one of the vids.



