Live data from Hacker News

How Lisp is Going to Save the World

landoflisp.com

141–150 of 239 posts

Re: How Lisp is Going to Save the World

#141

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…

"The truth is, it's all state. All of it." The problem is not state. The problem is being able to recreate the state: both for testing and for business purposes. The bigger problem is that most programmers, like you, are knee-jerking before the issue of "recreating the state" and declaring that "It cannot be done, because it's all state" . And hence we have both languages who are build by considering mutability to be…

Why can't you stop making rhetorical arguments? Please, just say why you think something is good without attacking people who have a different point of view. Reading the sort of polemic above is exhausting and confusing.

Re: How Lisp is Going to Save the World

#142
post #68

Great story. Unfortunately, the API documentation and tutorial writing guilds went extinct decades ago and has never been able to return to Lispland. :)

Seriously, this is a great point. One of the big problems with a small community of programmers who all think of themselves as elite, is that tasks like documentation and tutorial writing go by the wayside. This comment should be a wake-up call to any smart and far-sighted individuals who want to promote a language.

Is there a open source Common Lisp library that you'd like to see better documented?

Also, if you're (or anyone else is) interested in working on a Common Lisp environment tutorial, shoot me an email. I've been working on one but haven't launched it yet.

Re: How Lisp is Going to Save the World

#143
post #136

Earlier quoted context omitted.

But there was no other software. It was a logistics system written in Lisp which moved fleets, troops and supplies. It was based on a decade of research in various planning software written in Lisp. > And if the software wasn't written at all there would have been hundreds of people doing the software's work manually instead. How so? How should it work to move hundred thousands of people with hundreds of thousands di…

the first Gulf War in Iraq was won because a Lisp application took care that US soldiers had everything from toilet paper, ammunition to gasoline The word because means that if there was no Lisp application the war would not have been won. This is almost certainly false, even if the Lisp application did make things easier.

without that application, nobody would have been there.

Re: How Lisp is Going to Save the World

#145
post #68

Great story. Unfortunately, the API documentation and tutorial writing guilds went extinct decades ago and has never been able to return to Lispland. :)

The comic references clojure in multiple sections (multicore, lazy), I think you'll find the tutorial and documentation guilds still alive and well there.

Re: How Lisp is Going to Save the World

#146

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…

"The truth is, it's all state. All of it." The problem is not state. The problem is being able to recreate the state: both for testing and for business purposes. The bigger problem is that most programmers, like you, are knee-jerking before the issue of "recreating the state" and declaring that "It cannot be done, because it's all state" . And hence we have both languages who are build by considering mutability to be…

Could you provide examples of CRA Databases. ?

I'm not familiar withe the concept and google and wikipedia haven't helped.

Thanks.

Re: How Lisp is Going to Save the World

#147

Earlier quoted context omitted.

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…

Ir you are talking about syntax uniformity, lisp is not very regular also http://xahlee.info/UnixResource_dir/writ/lisp_problems.html Although I agree that clojure has is warts. For example clojurescript uses the numerical stack of JavaScript. So you get different and unexpected results than when running on the JVM

If you have issues related to the syntax uniformity of certain Lisp dialects, please speak for yourself rather then linking to that troll Xah Lee.

Xah Lee recommends that developers subjugate themselves to Wolfram Research which controls the proprietary program Mathematica.

Even though some Lisp dialects have a couple of quoting operators like ' and ` at least they don't have infix operators like + and * that Mathematica has. Besides, a few quote operators is no basis to say that Lisp syntax is "not very regular."

Re: How Lisp is Going to Save the World

#148

Earlier quoted context omitted.

"The only way to reduce bugs is to test thoroughly." That is false.

No, it's not false, but I'll rephrase it to illustrate my point: "the only economically practical way to reduce bugs is to test thoroughly, unless you're NASA or you have some magnificent budget that somehow lets you hire people who can mathematically prove your code is bug free". I am aware that you can prove code is correct, from a math POV. That's about the only way you can write "bug free" code without extensive…

I think what you mean is "any efficient engineering process will make good use of testing".

But if you already have some tests in place, the most efficient way to reduce bugs is often something other than more testing, e.g. code review, design review/improvements, or static analysis (often provided by the language/compiler).

All of those other methods can and will reduce bugs. So your statement that testing is the only way is obviously false in both a practical and theoretical sense.

Re: How Lisp is Going to Save the World

#149
post #68

Great story. Unfortunately, the API documentation and tutorial writing guilds went extinct decades ago and has never been able to return to Lispland. :)

Seriously, this is a great point. One of the big problems with a small community of programmers who all think of themselves as elite, is that tasks like documentation and tutorial writing go by the wayside. This comment should be a wake-up call to any smart and far-sighted individuals who want to promote a language.

Yep. They have time to draw elaborate cartoons, but not elaborate documentation! Funny how that works.

Re: How Lisp is Going to Save the World

#150

I had Haskell as the subject in my intro course at university (my first experience with functional programming). I've tinkered a bit with it since then as well, and I'm at the "somewhat intuitive grasp of monad transformers" state. I tried Clojure some week ago through the Clojure koans that were posted here. Compared to Haskell I found the syntax very obtuse and it was not obvious why Lisp would be more powerful tha…

"Compared to Haskell I found the syntax very obtuse and it was not obvious why Lisp would be more powerful than Haskell." Language "power" is ill-defined, and basically means "good". If you think that homoiconicity is good, then you probably like lisp. If you think that referential transparency is good, then you probably like haskell. Those are mutually exclusive, so one language can't really have both. But either on…

How is it that referential transparency (the ability to swap a reference with it's value: no hidden inputs) and homoiconicity (both the source and the resulting syntax tree sharing the same structure) are mutually exclusive?

What homoiconicity offers is the macro system, the ability to operate on the syntax tree as a regular language data structure.

The difference is a language like Haskell enforces referential transparency where in a lisp it is up to the developer whether or not a function will be referentially transparent.

Post reply on HN