...Please don't assume Lisp is only useful for Animation and Graphics, AI, Bioinformatics, B2B and E-Commerce, Data Mining, EDA/Semiconductor applications, Expert Systems, Finance, Intelligent Agents, Knowledge Management, Mechanical CAD, Modeling and Simulation, Natural Language, Optimization, Research, Risk Analysis, Scheduling, Telecom, and Web Authoring just because these are the only things they happened to list. http://www.foldr.org/~michaelw/log/programming/lisp/reverse-complement-benchmark Kent M. Pitman A language that doesn’t affect the way you think about programming, is not worth knowing. Alan Perlis aestheticles: n. The little-known source of aesthetic reactions. If your whole body feels like going into a fetal position or otherwise double over from the pain of experiencing something exceptionally ugly and inelegant, such as C++, it's because your aestheticles got creamed. http://groups.google.no/group/comp.lang.lisp/msg/4356934aa0d7c2fe Erik Naggum Also, except for popularity, Python didn't go anywhere as a language. http://axisofeval.blogspot.com/2010/05/next-lisps.html Manuel J. Simoni And as a result we find that object-oriented languages have succumbed to static thinkers who worship perfect planning over runtime adaptability, early decisions over late ones, and the wisdom of compilers over the cleverness of failure detection and repair. http://dreamsongs.com/ObjectsHaveFailedNarrative.html Richard P. Gabriel And you're right: we were not out to win over the Lisp programmers; we were after the C++ programmers. We managed to drag a lot of them about halfway to Lisp. http://people.csail.mit.edu/gregs/ll1-discuss-archive-html/msg04045.html Guy Steele Any comparison of hot JVM languages is likely to note that "Clojure is not object-oriented." This is true, but it may lead you to the wrong conclusions. It’s a little like saying that a rifle is not arrow-oriented. http://blog.thinkrelevance.com/2009/8/12/rifle-oriented-programming-with-clojure-2 Stuart Halloway Any sufficiently large C or Fortran program contains an ad-hoc, informally- specified, bug-ridden, slow implimentation of half of Common Lisp. Philip Greenspun Anyone could learn Lisp in one day, except that if they already knew Fortran, it would take three days. http://bc.tech.coop/blog/071226.html Marvin Minsky Art, engineering, and science are—in that order—part of a continuum of finding truth in the world and about ourselves. http://www.dreamsongs.com/ArtOfLisp.html Richard P. Gabriel As much as I love a debugger, it is disheartening to need to use it to understand my code. http://blogs.msdn.com/wesdyer/archive/2007/01/18/why-functional-programming-is-important-in-a-mixed-environment.aspx wesdyer Before Rails came along, for all practical purposes, Ruby didn't exist. http://blogs.law.harvard.edu/ivan/2005/12/20#a42 Bigger is just something you have to live with in Java. Growth is a fact of life. Java is like a variant of the game of Tetris in which none of the pieces can fill gaps created by the other pieces, so all you can do is pile them up endlessly. http://steve-yegge.blogspot.com/2007/12/codes-worst-enemy.html Steve Yegge C combines the power of assembler language with the convenience of assembler language. C++ is dumb, and you can't write smart systems in a dumb language. Languages shape the world. Dumb languages make for dumb worlds. http://www.cabochon.com/~stevey/blog-rants/tour-de-babel.html C++ is history repeated as tragedy. Java is history repeated as farce. http://bc.tech.coop/blog/071226.html Scott McKay C++ is history repeated as tragedy. Java is history repeated as farce. http://lambda-the-ultimate.org/node/4112#comment-62529 Scott McKay C++ is the dumbest language on earth, in the very real sense of being the least sentient. It doesn't know about itself. It is not introspective. Neither is C, but C isn't "Object-Oriented", and object orientation is in no small measure about making your programs know about themselves. Objects are actors. So OO languages need to have runtime reflection and typing. C++ doesn't, not really, not that you'd ever use. http://steve.yegge.googlepages.com/tour-de-babel Steve Yegge Dynamic types are stronger than static types, as they don't flee the field at runtime. http://seanmcgrath.blogspot.com/archives/2005_10_23_seanmcgrath_archive.html#113022917318108225 Brian Foote For optimisation, more is known about a program written in a dynamically typed language at runtime than is known about programs in statically typed languages at compile time http://www.voidspace.org.uk/python/weblog/arch_d7_2008_09_06.shtml#e1010id5 Gilad Bracha Functional programming is like describing your problem to a mathematician. Imperative programming is like giving instructions to an idiot. http://bc.tech.coop/blog/071226.html I am reminded of Gregor Kiczales at ILC 2003 [the International Lisp Conference] displaying some AspectJ to a silent crowd, pausing, then plaintively adding, "When I show that to Java programmers they stand up and cheer." http://bc.tech.coop/blog/071226.html Kenny Tilton I did say something along the lines of "C makes it easy to shoot yourself in the foot; C++ makes it harder, but when you do, it blows your whole leg off." Bjarne Stroustrup I do my Java editing in Eclipse now. It doesn't work as well as EMACSonce did, but it works better than EMACS does now. http://dobbscodetalk.com/index.php?option=com_myblog&show=I-Love-EMACS%21-or-at-least-I-did...-.html&Itemid=29 Bil Lewis I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. http://bc.tech.coop/blog/060224.html Alan Kay I may be biased, but I tend to find a much lower tendency among female programmers to be dishonest about their skills, and thus do not say they know C++ when they are smart enough to realize that that would be a lie for all but perhaps 5 people on this planet. http://groups.google.no/group/comp.lang.lisp/msg/f0f59b2b18124881 Erik Naggum I should not choose long, hard words just to make other persons think that I know a lot. I should try to make my thoughts clear; if they are clear and right, then other persons can judge my work as it ought to be judged. http://www.brics.dk/~hosc/local/HOSC-12-3-pp221-236.pdf Guy Steele I think programmers have become inured to incidental complexity... when they encounter complexity, they consider it a challenge to overcome, rather than an obstacle to remove.Overcoming complexity isn't work, it's waste. Rich Hickey I would compare the Smalltalk stuff that we did in the '70s with something like a Gothic cathedral. We had two ideas, really. One of them we got from Lisp: late binding. The other one was the idea of objects. Those gave us something a little bit like the arch, so we were able to make complex, seemingly large structures out of very little material, but I wouldn't put us much past the engineering of 1,000 years ago. http://bc.tech.coop/blog/060224.html Alan Kay I'd just like to take this moment to point out that C has all the expressive power of two dixie cups and a string. http://mail.python.org/pipermail/python-list/2002-August/158831.html Jamie Zawinski I'm assuming, based on long observation, that Microsoft with high likelihood fucked up the pragmatics completely, and that programming in C#, as opposed to reading about it, is deeply depressing. http://axisofeval.blogspot.com/2010/07/c-40-industrial-response-to-lisp.html Manuel J. Simoni I'm not against types, but I don't know of any type systems that aren't a complete pain, so I still like dynamic typing. Alan Kay If I were chained to a bench and 'perl' was the only thing that could open the lock, I'd probably cut my hand off. http://wiki.gungfu.de/Main/LanguageFights Gerald Penn If someone was to drop a bomb on this building, it would wipe out 50 percent of the Lisp community. That would probably be a good thing. It would allow Lisp to start over. http://www.findinglisp.com/blog/2005/06/ilc-2005-wednesday-report-late.html John McCarthy If you give someone Fortran, he has Fortran. If you give someone Lisp, he has any language he pleases. http://bc.tech.coop/blog/071226.html Guy Steele It is better to have 100 functions operate on one data structure than 10 functions on 10 data structures. http://bc.tech.coop/blog/071226.html Alan Perlis Java and C# are both such stifling languages that you need to be able to use code generators to make them effective. http://simonwillison.net/2004/Feb/11/codeGeneration/ Java and C++ make you think that the new ideas are like the old ones. Java is the most distressing thing to hit computing since MS-DOS. http://bc.tech.coop/blog/060224.html Alan Kay Java is, in many ways, C++--. http://bc.tech.coop/blog/071226.html Michael Feldman Just a gentle reminder that I took some pains at the last OOPSLA to try to remind everyone that Smalltalk is not only NOT its syntax or the class library, it is not even about classes. I'm sorry that I long ago coined the term "objects" for this topic because it gets many people to focus on the lesser idea.The big idea is "messaging" -- that is what the kernal of Smalltalk/Squeak is all about (and it's source: something that was never quite completed in our Xerox PARC phase). http://wiki.gungfu.de/Main/ObjectOrientedProgramming Alan Kay Languages shape the way we think, or don't. http://groups.google.no/group/comp.lang.lisp/msg/baafc407b4bd66f5 Erik Naggum Lisp - the notion of writing your code directly in tree form - is an idea that’s discovered time and again. People have tried all sorts of crazy alternatives, writing code in XML or in opaque binary formats or using cumbersome code generators. But their artificial Byzantine empires always fall into disrepair or crush themselves into collapse while Lisp, the road that wanders through time, remains simple, elegant, and pure. http://corfield.org/blog/post.cfm/the-joy-of-clojure Steve Yegge Lisp indeed leaves you with your own ideas and your own limitations. It doesn't pose any artificial restrictions on your programs that you have to work against, and it doesn't provide any "color by numbers" examples that make you feel like you have achieved something. Lisp requires you to be creative. http://steve-yegge.blogspot.com/2006/04/lisp-is-not-acceptable-lisp.html?showComment=1145470320000#c114547037402357120 Pascal Costanza Lisp is a language for doing what you've been told is impossible. http://bc.tech.coop/blog/071226.html Kent M. Pitman Lisp is the language of loveliness. With it a great programmer can make a beautiful, operating thing, a thing organically created and formed through the interaction of a programmer/artist and a medium of expression that happens to execute on a computer. http://www.dreamsongs.com/ArtOfLisp.html Richard P. Gabriel Lisp is ugly. Will always be. If you care, you're just not ready yet. http://axisofeval.blogspot.com/2010/04/that-ragged-old-lisp.html Manuel J. Simoni Lisp's uglyness is like a stealth-coat, keeping it hidden from the clueless. http://axisofeval.blogspot.com/2010/04/that-ragged-old-lisp.html Manuel J. Simoni Meta means that you step back from your own place. What you used to do is now what you see. What you were is now what you act on. Verbs turn to nouns. What you used to think of as a pattern is now treated as a thing to put in the slot of an other pattern. A meta foo is a foo in whose slots you can put foos. http://wiki.gungfu.de/Main/Meta Guy Steele Most people who graduate with CS degrees don't understand the significance of Lisp. Lisp is the most important idea in computer science. Alan's breakthrough in object oriented programming, wasn't objects, it was the realizing that the Lisp metasystem was what we needed. http://bc.tech.coop/blog/060224.html Alan Kay Most undergraduate degrees in computer science these days are basically Java vocational training. http://bc.tech.coop/blog/060224.html Alan Kay object-oriented design is the roman numerals of computing. http://en.wikipedia.org/wiki/Rob_Pike Rob Pike Only a subset of all possible programs can be written with statically typed languages. For some people that is enough. http://www.voidspace.org.uk/python/weblog/arch_d7_2008_09_06.shtml#e1010id5 Gilad Bracha OO makes code understandable by encapsulating moving parts.FP makes code understandable by minimizing moving parts. http://www.johndcook.com/blog/2010/11/03/object-oriented-vs-functional-programming/ Michael Feathers OOP to me means only messaging, local retention and protection and hiding of state-process, and extreme late-binding of all things. It can be done in Smalltalk and in LISP. There are possibly other systems in which this is possible, but I'm not aware of them. http://wiki.gungfu.de/Main/ObjectOrientedProgramming Alan Kay Parentheses? What parentheses? I haven't noticed any parentheses since my first month of Lisp programming. I like to ask people who complain about parentheses in Lisp if they are bothered by all the spaces between words in a newspaper... http://bc.tech.coop/blog/071226.html Kenny Tilton Perl is another example of filling a tiny, short-term need, and then being a real problem in the longer term. http://acmqueue.com/modules.php?name=Content&pa=showpage&pid=273&page=3 Programming in Basic causes brain damage. Edsger Wybe Dijkstra Programming in C++ is premature optimization. http://www.cs.caltech.edu/~mvanier/hacking/rants/scalable_computer_programming_languages.html Question: "Why are languages like C , C#, and Java so prevalent?"Dave Ungar: "Why do people smoke tobacco? http://bc.tech.coop/blog/071226.html Rekursion ist für funktionale Sprachen wie das Fernsehen für die amerikanische Popkultur - sie sind einfach unzertrennlich. Effektiv C++ programmieren, Scott Meyers - Tipp 48 Rewarding incompetence and ignorance increases the number of incompetent programmers. Designing programming languages and tools so incompetent programmers can feel better about themselves is not the way to go. http://groups.google.no/group/comp.lang.functional/msg/b69c767370ee7c43 Erik Naggum Smalltalk, it's like Ruby with tools. http://wilkes.blogspot.com/2008/01/amen-brother.html So the problem is-I've said this about both Smalltalk and Lisp-they tend to eat their young. What I mean is that both Lisp and Smalltalk are really fabulous vehicles, because they have a meta-system. They have so many ways of dealing with problems that the early-binding languages don't have, that it's very, very difficult for people who like Lisp or Smalltalk to imagine anything else. http://bc.tech.coop/blog/060224.html Alan Kay SQL, Lisp, and Haskell are the only programming languages that I've seen where one spends more time thinking than typing. http://www.paulgraham.com/quotes.html Philip Greenspun Static types give me the same feeling of safety as the announcement that my seat cushion can be used as a floatation device. http://seanmcgrath.blogspot.com/archives/2005_10_23_seanmcgrath_archive.html#113022917318108225 Don Roberts Structure is nothing if it is all you got. Skeletons spook people if they try to walk around on their own. I really wonder why XML does not. http://groups.google.no/group/comp.lang.lisp/msg/7d410e0ae791d1cb Erik Naggum The great problem with Lisp is that it is just good enough to keep us from developing something really good. http://bc.tech.coop/blog/060224.html Alan Kay The last good thing written in C was Franz Schubert's Symphony number 9. http://bc.tech.coop/blog/071226.html Erwin Dieterich The one thing it [Lisp] has going against it is that it is not a crystallization of style. The people who use it must have a great deal of personal style themselves. But I think if you can have one language on your system, of the ones that have been around for a while, it should be Lisp. http://bc.tech.coop/blog/060224.html Alan Kay There are two types of programming languages; the ones that people bitch about and the ones that no one uses. Bjarne Stroustrup These languages will never be mainstream, because the mainstream would never see the benefits they provide. The mainstream would kill themselves with such power. There's a reason the mainstream likes manifest typing, procedural programming, and cut and paste methodologies, quite simply, it's all they can handle. http://onsmalltalk.com/languages-of-the-gods Things that are different should look different. http://www.wall.org/~larry/pm.html Larry Wall Think of C++ as an object-oriented assembly language. http://www.cs.caltech.edu/~mvanier/hacking/rants/scalable_computer_programming_languages.html To iterate is human, to recurse divine. L. Peter Deutsch Unless I'm writing a kernel, a device driver, a virtual machine, or an interface to a C or C++ library, writing in C is a probably premature optimization. http://www.onlamp.com/pub/a/onlamp/2003/05/12/languagephilosophy.html Until real software engineering is developed, the next best practice is to develop with a dynamic system that has extreme late binding in all aspects. http://bc.tech.coop/blog/060224.html Alan Kay We've always known that dynamic languages are a great way to create "little languages" for specific tasks. But we don't yet fully appreciate that all programming is a continuous process of language invention. And we don't (yet) evaluate programming-language productivity on those terms. .... We are linguistic animals endowed with a protean ability to generate language. Naturally we'll want that same generative power in our programming languages. http://simonwillison.net/2004/Feb/11/codeGeneration/ Dave Thomas When someone says, "I want a programming language in which I need only say what I want done," give him a lollipop. Alan Perlis Where's the domain specific language for the domain of software programming? http://www.dehora.net/journal/2005/12/lisp.html XML—which amounts to some fundamental Lisp data structures reinterpreted by people with bad taste brainwashed by inflexibility. http://www.dreamsongs.com/ArtOfLisp.html Richard P. Gabriel You can drag any rat out of the sewer and teach it to get some work done in Perl, but you cannot teach it serious programming. http://bc.tech.coop/blog/071226.html Erik Naggum You're posting to a Scheme group. Around here, arguing that Java is better than C++ is like arguing that grasshoppers taste better than tree bark. http://bc.tech.coop/blog/071226.html [Lisp is] "the greatest single programming language ever designed" http://bc.tech.coop/blog/060224.html Alan Kay