Aled Gest <himse...@gmail.com> writes: >> Scheme *should* be used for everything because at least one good macro >> system has been designed for it. Lisp macros can do arbitrary >> computation at compile-time, and the Scheme macro system required by >> R6RS provides all the power of Lisp macros *and* supports a >> pattern-matching macro specification syntax for simple syntactic sugar. > > That doesn't explain *why* it should be used. Why should Scheme, or > any other language with a higher level of abstraction and obfuscation, > replace a relatively clean and unencumbered language like C?
* Because manual memory management is a mess. * Because some data structures and algorithms (red-black trees, for a classic example) are extremely cumbersome in C compared to other languages. * Because adding on to C to fix its many small warts would be a mess (it can be less bad than C++ and still very bad). Not all modern languages have to be towers of complexity: Scheme and SML are two very simple and elegant languages, and even Haskell 98 can really be kept in your head in its entirety. Go is another example of a simple, yet modern language (built-in tuples!), one that may appeal more the crowd on this mailing list. -- \ Troels /\ Henriksen