What features of #CommonLisp can't be found in a larger #scheme distribution? I feel like I'm always hearing that scheme isn't full-featured enough for most #lisp hackers, but it's unclear what the average scheme is usually missing. On the other hand, I can think of quite a few features common in among schemes that you won't find in CommonLisp.
@rml CLOS and MOP are better respect many Scheme OOP libraries.
Generic functions are used also in contexts different from OOP.
CL macros are easier to write.
The error and exception handling of CL is very powerful and useful.
But the real answers for me are these:
1) CL live coding (i.e. interactive REPL) is very fun and addictive
2) there are many CL compilers with different characteristics at run-time accepting the same CL code, and that you are sure that you can use in production. For example with ECL you can produce C-friendly libraries.
3) a minor detail, but I like the fact that "nil" stays for false, and every other value for "true". The code become shorter.
@rml regarding exception handling, the correct name is "Condition System". It is an approach more similar to Erlang, where you have common code for intercepting and managing certain classes of errors in an uniform way.
I didn't understood if the limitation about Coalton are regarding run-time errors, or compile-time errors. The condition system is only about management of run-time errors or run-time exceptional conditions.
It can be used also for implementing effects, when it is sufficient a manipulation of the stack. Otherwise Scheme continuations are more powerful.