>>* Han-Wen Nienhuys ([EMAIL PROTECTED]) wrote: >> >>>We have actually gotten to the point that we have a slight dislike for >>>C++ as an implementation language. I recommend to learn Scheme and >> >>I'm learning C++ to use in sound synthesis programs and to be able to >>hack lilypond. Could you share a litte more about your dislikes? > > > I remember having had longish slashdot flamewar about it, see > also > > http://www.xs4all.nl/~hanwen/public/ramblings/stroustrup > > I think that it is too large, too complex, and carries to much > historical baggage that sacrifices correctness for speed. Also it > lacks a lot of features that I consider necessary for comfortable > programming, like garbage collection, reflection and built-in strings, > lists, dictionaries, vectors, and first-class functions. >
C++ does have built in strings, lists, dictionaries, and vectors. They are all part of the standard template library, and string is used as: string x = "Hi "; string y = "there."; cout << x + y << endl; // concatenation I'm not exactly sure what you mean by first-class function, but if you mean functors, or function objects (an object that is a function - better than a function pointer), C++ has those, too. There are hooks in the memory allocation libraries that would allow for the you to replace the default memory allocation library with a garbage collection library. There are probably open-source versions of such libraries (although I have not looked for one). I'm not exactly sure what you mean by reflection, so I cannot comment. As far as size, yes it's large, but I believe there are compiler settings to reduce the size by dropping some unnecessary libraries (like error handling). The rest are personal opinions that I happen to not share. That's what makes individuality great! But as long as you are controlling the Lilypond source, it's your opinions that matter here. I just wanted the capabilites of C++ to be represented properly. Long live Scheme!! _______________________________________________ Lilypond-devel mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/lilypond-devel