7 comments

[ 4.3 ms ] story [ 23.2 ms ] thread
"I don’t mention Common Lisp here because, again I stress personally, I hope we stop encouraging it’s active use."

Keep hoping.

"I consider [Common Lisp] [...] over-engineered for almost any other scenario."

Pretty broad claim, in what way is CL over-engineered and for what particular scenarios? And how does that justify discouraging its use?

Sounds like someone is looking for excuses not to get busy learning a language in depth... Seriously, if you don't feel like learning a language, fine. But don't criticize that which you only understand the basics of.

Hi. I acknowledge that this wasn't well defended. Honestly, I didn't know many people even read my site and I certainly didn't post the article expecting it to make it's way to Y-Combinator. It was a personal draft that I was going to touch up tomorrow but I have a 5am flight so I'm going to sleep for now. Suffice it so say I plan to learn Common Lisp and tried to stress in the first paragraph or so that these are personal inexperienced opinions. I'll try to give it a fair treatment later on when I'm able. Call this an early impression.
I was curious about that comment as well... I really like the cleanliness of Scheme, but I also find myself attracted to Lisp's ability to selectively optimize a program, for example by declaring the type of variables. To my knowledge this ability is not included in any Scheme implementation. Does such a Scheme actually exist?
Apologies for the site being down at the moment. I'd reset the server but I'm in Chicago. I know that PLT Scheme recently had a system for optional types implemented and there was a paper posted on Lambda-the-ultimate.org. I think it's in SVN. http://lambda-the-ultimate.org/node/2622

Apparently, Bigloo has supported this for a while: http://www-sop.inria.fr/mimosa/fp/Bigloo/doc/bigloo-22.html

One should also consider that there are implementations like Gambit-C and Chicken that compile to type-annotated languages, not that it's necessarily what you had in mind. Just food for thought.

Does C or C++ have a single or dominant implementation?
No. At least, there are multiple compilers for it if you want to go by that. There are a variety of reasons that I didn't want to cover C/C++. I mention in the second paragraph that I'm interested in the subset of languages that have achieved some mainstream success. By some success, I mean less than 20% of software companies actually hire for those languages. That second paragraph is all really about me copping out of dealing with C, C++, Java, or C#. I know. Classy, right?
I'm going to finalize this post tonight but in the meantime I want to elucidate the main point before the discussion gets off-topic.

I was really trying to write more about the fact that the implementations and communities we have (which are often harped on) are sufficient. The problem is a lack of community formed around sharing code and building tools, libraries, etc which I feel could be solved by a module system. It's a sociological issue. My Common Lisp comment was off-the-cuff but not meant to be as judgmental as it sounded. As I've said, it's an impression but I'll write more about the later. Let's keep the focus on how to solve the problem of sharing code between lisps. That's what I see as the big thing holding lisps (of all stripes) back.