Scheme vs Common Lisp: war stories
- by SuperElectric
There are no shortage of vague "Scheme vs Common Lisp" questions on both StackOverflow and on this site, so I want to make this one more focused. The question is for people who have coded in both languages:
While coding in Scheme, what specific elements of your Common Lisp coding experience did you miss most? Or, inversely, while coding in Common Lisp, what did you miss from coding in Scheme?
I don't necessarily mean just language features. The following are all valid things to miss, as far as the question is concerned:
Specific libraries.
Specific features of development environments like SLIME, DrRacket, etc.
Features of particular implementations, like Gambit's ability to write blocks of C code directly into your Scheme source.
And of course, language features.
Examples of the sort of answers I'm hoping for:
"I was trying to implement X in Common Lisp, and if I had Scheme's first-class continuations, I totally would've just done Y, but instead I had to do Z, which was more of a pain."
"Scripting the build process in my Scheme project got increasingly painful as my source tree grew and I linked in more and more C libraries. For my next project, I moved back to Common Lisp."
"I have a large existing C++ codebase, and for me, being able to embed C++ calls directly in my Gambit Scheme code was totally worth any shortcomings that Scheme may have vs Common Lisp, even including lack of SWIG support."
So, I'm hoping for war stories, rather than general sentiments like "Scheme is a simpler language" etc.