Earlier quoted context omitted.
I'm curious, i rarely see any REAL[1] criticism of lisp, just the old "ughh, my eyes, all those parenthesis, aaa" type of nonsense. Why do you think its a wrong direction? [1] Im not talking about implementations, obviously, Common lisp, scheme and clojure have their problems, im talking about the general idea of lisp.
So, I guess a real criticism of Lisp would be that it is stuck in the past. Lispers are still looking down on C; they never try to look up. If they did, they would see languages like ML and Haskell have surpassed them in all respects. Heck, even Matlab and its descendants with the "everything is a matrix" philosophy have created a powerful new paradigm that is certainly not a special case of "everything is a list". I…
I'm turning into a Lisp snob
61–70 of 94 posts
Re: I'm turning into a Lisp snob
#62Earlier quoted context omitted.
I'm curious, i rarely see any REAL[1] criticism of lisp, just the old "ughh, my eyes, all those parenthesis, aaa" type of nonsense. Why do you think its a wrong direction? [1] Im not talking about implementations, obviously, Common lisp, scheme and clojure have their problems, im talking about the general idea of lisp.
I also feel that Lisp is a wrong direction. Its main problem is the lack of static typing. It is understandable that a language which has existed for so long with relatively little change would lack a static type system, but with as much progress as has been made in research on type systems since then, there is no good reason for a modern language to lack a powerful type system.
Re: I'm turning into a Lisp snob
#63"I could show these poor imperative programmers how their problems could be solved much easier in Lisp if I wanted to." That to me (as an outsider) seems to be the main message of these Lisp blogs. But at some point, nobody will believe you could do it, unless you actually do.
Yes, if Lisp is so powerful, where are all the super programs written in it? I'm only aware of EMACs and maybe at one point Autocad? And I guess PG wrote a couple webapps with it....
I wouldn't extrapolate beyond that. I don't know what languages are good for writing super-programs since I never wrote one. Super-programs are a small subset of all programs.
Re: I'm turning into a Lisp snob
#64Earlier quoted context omitted.
Unsubstantiated claims. Common Lisp has been embedded inside Quake II: http://ecls.sourceforge.net/ecl-in-quake2.jpg That takes care of the graphics, networking, matrix manipulation and low-latency. What other FUD do you need answered?
Nah. Using Lisp to script an engine written in C++ is not the same as writing the engine itself in Lisp. I'm not saying this is not possible, it's just that nobody tries. You might be able to do a serious graphics or high-performance computing project in Lisp. You will be the first one, and I'll be very interested in how it goes.
ICAD has been written in Lisp and many turbines of several commercial aircrafts have been designed with it.
CDRS was the conceptual design and rendering system, written by Evans & Sutherland in Lisp. Many cars from Ford and Jaguar have been designed with it. It was then taken over by PTC and sold as Pro/Engineer Designer.
Mirai is a 3d graphics tool used for example to create the animations of Gollums's face in Lord of the Rings. Earlier versions of this software have been used for animation films and many computer games, for example by Nintendo to design the 3d worlds. There were other uses of this software, for example the Orca in 'Free Willy' was animated with it.
Here is a screenshot of Mirai: http://lispm.dyndns.org/lisp/pics/Mirai-P5-Paint-Front.jpg
Let us know when there is a similar Haskell app that supports 2d+3d painting, 3d modelling, 3d animation, 3d rendering, 3d motion editing, etc. in a nice application for, say, SGIs or Windows machines - then show how to script it in Haskell at runtime.
Re: I'm turning into a Lisp snob
#65"Ugh, look at all that syntax." As a common lisp programmer it's sad to see somebody do to another language what people do to CL. One superficial glance at the syntax and write it off, without further criticism. "Lisp has a lot of brackets, LOL"
Re: I'm turning into a Lisp snob
#66Earlier quoted context omitted.
Nah. Using Lisp to script an engine written in C++ is not the same as writing the engine itself in Lisp. I'm not saying this is not possible, it's just that nobody tries. You might be able to do a serious graphics or high-performance computing project in Lisp. You will be the first one, and I'll be very interested in how it goes.
Many have been done. ICAD has been written in Lisp and many turbines of several commercial aircrafts have been designed with it. CDRS was the conceptual design and rendering system, written by Evans & Sutherland in Lisp. Many cars from Ford and Jaguar have been designed with it. It was then taken over by PTC and sold as Pro/Engineer Designer. Mirai is a 3d graphics tool used for example to create the animations of Go…
However, I am doing graphics for a living, and much of it in C++. I am sincerely interested if I can use another language to give me a higher degree of productivity and not sacrifice too much performance. Common Lisp might be able to pull this off, but it certainly is not often used in this way.
I think you'd agree it's more common for a Lisp person to ask "why do people still use these inferior languages?" rather than "how can we match the performance/scalability/parallelism of these other languages?".
Re: I'm turning into a Lisp snob
#67Earlier quoted context omitted.
Many have been done. ICAD has been written in Lisp and many turbines of several commercial aircrafts have been designed with it. CDRS was the conceptual design and rendering system, written by Evans & Sutherland in Lisp. Many cars from Ford and Jaguar have been designed with it. It was then taken over by PTC and sold as Pro/Engineer Designer. Mirai is a 3d graphics tool used for example to create the animations of Go…
Oh, Haskell is also not used very often for those things. It's just my (outsider) perception that Lisp programmers frequently pick on C/C++ as inferior. Haskell programmers instead ask "what can we do to make Haskell performance closer to C/C++?" However, I am doing graphics for a living, and much of it in C++. I am sincerely interested if I can use another language to give me a higher degree of productivity and not…
But C/C++ are superior as static low-level languages compared to Lisp.
The Haskell programmers should really ask themselves how to get closer to C/C++ in speed - especially since the Haskell language implementations (GHC!) are mostly static and code is usually statically compiled - just like C and C++. If Haskell compilers generate slower code or user code is slow, Haskell users have little excuse, only poorer tools and/or poorer code.
Lisp programmers do have an excuse, since the tools are optimized for safe execution of untyped dynamic (changeable at runtime) code. That's a completely different angle of programming. From there the Lisp compilers try to recover some speed by selectively removing dynamics and safety - where possible or needed. Lisp programmers ask themselves how to improve the compilers, but since both the application domains and the architectures tend to be different, things are hard to compare. C/C++ wins in the static performance contest. Lisp wins in the runtime flexibility contest. But those are really very different domains.
You think that Common Lisp programmers think that C is inferior. The reality is that these are completely different languages developed for different tasks with very different implementation and design decisions.
If you are a Lisp programmer, you can write graphics intensive applications in Lisp - you can also get near to C performance - but it's hard and it often is not full C performance (unless you are using specialized compilers). But still you would be very lonely (unless the company around you uses Lisp), since much of the industry uses C/C++ for graphics (from Low-level drivers to Maya).
Still many Lisp programmers, despite knowing that Lisp and C are different, try to use Lisp either alone or together with C in performance oriented domains: sound processing and image processing were and still are such domains.
Re: I'm turning into a Lisp snob
#68> "Programming language quality is usually inversely proportional to the number of special forms" Programming language obscurity is also usually inversely proportional to the number of special forms. Church numerals? The happy place is somewhere in the middle, where there's enough language such that you don't have to build it out of other pieces - and this also helps with performance, static analysis, tooling, debugg…
One observation to be made is that Common Lisp has 25 special forms ( http://www.ai.mit.edu/projects/iiip/doc/CommonLISP/HyperSpec... ). That's quite a lot. But none of them are redundant or superfluous.
Re: I'm turning into a Lisp snob
#69Earlier quoted context omitted.
I'm curious, i rarely see any REAL[1] criticism of lisp, just the old "ughh, my eyes, all those parenthesis, aaa" type of nonsense. Why do you think its a wrong direction? [1] Im not talking about implementations, obviously, Common lisp, scheme and clojure have their problems, im talking about the general idea of lisp.
So, I guess a real criticism of Lisp would be that it is stuck in the past. Lispers are still looking down on C; they never try to look up. If they did, they would see languages like ML and Haskell have surpassed them in all respects. Heck, even Matlab and its descendants with the "everything is a matrix" philosophy have created a powerful new paradigm that is certainly not a special case of "everything is a list". I…
Check out the Haskell page on Music and Sound libraries and applications: http://www.haskell.org/haskellwiki/Applications_and_librarie...
That stuff might be useful, especially if you like curses user interfaces.
Compare that to some of the Lisp APPLICATIONS in that area:
OpenMusic: http://recherche.ircam.fr/equipes/repmus/OpenMusic/
PWGL: http://www2.siba.fi/PWGL/pwglconstraints.html
Common Music: http://commonmusic.sourceforge.net/
Symbolic Composer: http://www.symboliccomposer.com/windows/page_screenshots.sht...
Somehow the Lisp programmers haven't gotten the message that Lisp has been surpassed in all respects by Haskell - I wonder why that is. Do you have an idea why Lisp has cool applications and Haskell has curses-based MP3 player frontends?
Re: I'm turning into a Lisp snob
#70Go was specifically designed to be a systems language, period. Lisp was never designed as so, and perhaps that is why its hardly used as a systems language today. Personally, I like Lisp, Haskell, and Python but I also know C is a great systems language even though its not perfect and its a bit passed its prime. Thus Go seems to be a good progression from the C/C++ family (I never really saw Java being a systems language but that's my opinion).
Anyway, I agree I think you're becoming a bit of a lisp snob. It might suit you to be a bit more open minded and objective. Even if you don't fully understand the design of Go, you should be able to understand that it was designed by people who have credible experience and skill in designing languages and systems. And sorry to spoil things for you, but the last thing I can imagine is Clojure being the next systems language.
Your post essentially is a brief comparison of a selection of fruits without much substance.
Lastly, here's a piece of advice:
"That's why I reserve the right to match the language to the problem, and even - often - to coordinate software written in several languages towards solving a single problem."