Live data from Hacker News

How Lisp is Going to Save the World

landoflisp.com

71–80 of 239 posts

Re: How Lisp is Going to Save the World

#71
post #30

With the deepest reverence to John McCarthy, I regret to say that Lisp is our cosmological constant. It creates a static universe that is otherwise expanding; it reduces the problem to a solvable one and then declares victory. The truth is, it's all state. All of it. Remember that movie "Boy in the Plastic Bubble," about a boy with an immune system deficiency who lives instead a hermetically-sealed, sterile bubble? T…

I attended TechMesh 2012 in London. The creators of Haskell were there, and there was a number of other Haskell talks. They were almost all about how to model state, I/O, etc. One of the Haskell creators also created Quickcheck, a generative testing tool where tests are written in Haskell. He talked about how he found state related bugs in Riak. Rich Hickey, author of Clojure, was there, he keynoted about state. I'd…

[aside] that looks like it was a very interesting conference. i can't find much related info. will it be annual? are they spreading to other places? who was behind it? [edit:] it seems to be an indie thing http://techmeshconf.com/techmesh-london-2012/contact/

Re: How Lisp is Going to Save the World

#72
post #31

Earlier quoted context omitted.

When I first learned Lisp, I quickly got to the point where I "don't even see the parenthesis". Shortly after that I learned to love them, and see them (and Lisp's simple syntax as a great strength). Now extraneous syntax, even in a half-Lisp like Clojure, seems ugly to me. It's a real pity more people don't appreciate the elegant simplicity of Lisp (and especially Scheme).

Just a curiosity -- why do you call Clojure a "half-Lisp?"

Not me, but I would guess it's because, while both Common Lisp (ie. SBCL) and Clojure are both Lisp-like languages per se, Clojure departs further from "pure" Lisp than Common Lisp, in that it replaces lists with things such as vectors in a lot of places (see defn syntax).

Re: How Lisp is Going to Save the World

#73
post #5

I am a intermediate programmer with just over one year experience. Everywhere I read about the power of lisp and really want to use it. If it is so good why ain't it is used more? It is very easy to get sites running using ASP .NET, wordpress, RoR or Django. I have worked on production sites using the first two. And personally tried on small projects on the last two. Is there a way to use Lisp professionally?

> If it is so good why ain't it is used more? * Weird syntax (for most people). * No free implementations existed during a key period (80s, 90s) so no initial traction, no useful libraries and killer apps which would pull the whole ecosystem. Implementations didnt even exist for commodity hardware. * The commercial implementations cost too much, so they suffocated the ecosystem. People preferred coding for free in C…

> * No free implementations existed during a key period (80s, 90s) so no initial traction, no useful libraries and killer apps which would pull the whole ecosystem. Implementations didnt even exist for commodity hardware.

Emacs LISP (OK, a limited dialect) was available and so was CMUCL (full implementation), which I believe was used for teaching in 1992 when I first got in contact with LISP at our uni ...

Also, back then (80's and 90's) most people still paid an arm and a leg for C, Modula and Pascal on their platforms, so that can't have been an issue. My take is that LISP implementations were too slow to justify their use for most people over faster compiled languages. Whether you paid for the language or not, you expected to be able to get the most out of your hardware.

Re: How Lisp is Going to Save the World

#74
post #30

Earlier quoted context omitted.

I attended TechMesh 2012 in London. The creators of Haskell were there, and there was a number of other Haskell talks. They were almost all about how to model state, I/O, etc. One of the Haskell creators also created Quickcheck, a generative testing tool where tests are written in Haskell. He talked about how he found state related bugs in Riak. Rich Hickey, author of Clojure, was there, he keynoted about state. I'd…

How to model a state is a meaningless question without asking state of what. Same is true for I/O. You must start from a protocol. Most of people probably underestimate how many brilliant people contribute to what we could call a modern Lisp. With all respect, Clojure is nowhere near in terms of sanity, consistency and uniformity. I don't event want to argue about Haskell. Seems like words "monad" is the same as word…

> Seems like words "monad" is the same as words "chakra" or "dharma" in a popular culture.

Are there any more interesting concepts you stubbornly dismiss?

Re: How Lisp is Going to Save the World

#75
post #41

Great intro. Any comments on "Land of Lisp" as a book for a "want to learn Lisp" journey?

Excellent book to discover and learn Lisp, maybe the best one actually. It covers all aspect of Lisp and provides lot of examples code based on games. This is somehow more fun than the math example of SCIP (even if this is another great book I deeply appreciate too)

Thanks for this -- I've been thinking about taking up SICP but I'm not that math-oriented (I do want to change that, though!) I think that I'll pick this book up first.

Re: How Lisp is Going to Save the World

#76

With the deepest reverence to John McCarthy, I regret to say that Lisp is our cosmological constant. It creates a static universe that is otherwise expanding; it reduces the problem to a solvable one and then declares victory. The truth is, it's all state. All of it. Remember that movie "Boy in the Plastic Bubble," about a boy with an immune system deficiency who lives instead a hermetically-sealed, sterile bubble? T…

I'm sorry but what you're saying is immediately obvious. No one in the functional programming world is laboring under the impression that state doesn't exist. The real issue is whether you think it's worth separating out code that can be reasoned about in a mathematical fashion from stateful code that has to deal with mutating concerns. Functional programming is where research on improving abstractions to better allo…

I'm not sure what I said is obvious because you seem to have missed my point. I didn't say that "state exists". I said, "It's all state." I'm saying the notion of "separating out code that can be reasoned about in a mathematical fashion," while a successful strategy in the past, is inherently crippled by that division.

Re: How Lisp is Going to Save the World

#77
I fail to see how this is going to convince anybody who hasn't tried lisp to give it a shot. This cartoon can be summarised as "All languages are accumulating bugs while lisp has some magic X and Y that provide a way around them."

A blub user will think "yeah whatever", IMHO.

Re: How Lisp is Going to Save the World

#79
post #61
post #50

Earlier quoted context omitted.

I'm coming from a Clojure perspective (around a year of using it), so maybe some of this stuff is different with CL, but Clojure is incredibly simple compared to C++ and in my experience there's no problem with everyone simply using the entire language. I've read a decent amount of Clojure source, since documentation is admittedly a problem with a lot of libraries, but it's the language I've found actually easiest to…

The books I learnt lisp from emphasised recursion early, and were taught from a perspective of emphasising the power of the language and tricks available to programmers. This approach encourages arcana, similar to bit-shifting tricks you'd find in C books like _Hacker's Delight_ (Warren). Through lisp macros (present in Clojure), you can create your own sub-language. So merely through the absence of this emphasis on…

The JVM still doesn't do tail call optimization but Clojure has a special form, recur, that you can only use in tail position and doesn't use consume stack space. An example: https://gist.github.com/4493547 (loop is like let but works with recur).

A simple one from the standard lib is last: https://github.com/clojure/clojure/blob/master/src/clj/cloju...

Re: How Lisp is Going to Save the World

#80

Earlier quoted context omitted.

Was that with the intent of baiting clicks, or as satire?

Neither - I cannot measure how many times it gets clicked, since it's not my website, and I didn't really mean it in the satirical sense. I guess I just wanted to see how many points it collects. So far it has exceeded my wildest expectations, although that is mainly due to the content, not the title.

In the Explanation on Brevity Guild Micro Fighter, you use "i" as the variable, but the code snippet uses "n". I only found this because I was having fun following along! :)
Post reply on HN