[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: reading material?
From: |
Douglas A Linhardt |
Subject: |
Re: reading material? |
Date: |
Fri, 19 Mar 2004 17:25:08 -0600 |
User-agent: |
Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.0.1) Gecko/20020823 Netscape/7.0 (CK-LucentTPES) |
>>* Han-Wen Nienhuys (address@hidden) 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!!
- reading material?, Edward Sanford Sutton, III, 2004/03/17
- Re: reading material?,
Douglas A Linhardt <=
Re: reading material?, Heikki Johannes Junes, 2004/03/23
Re: reading material?, Heikki Johannes Junes, 2004/03/24