>>* 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