POV-Ray : Newsgroups : povray.off-topic : Standard libraries : Re: Standard libraries Server Time
6 Sep 2024 13:19:51 EDT (-0400)
  Re: Standard libraries  
From: Warp
Date: 6 Mar 2009 20:01:47
Message: <49b1c77b@news.povray.org>
Darren New <dne### [at] sanrrcom> wrote:
> Warp wrote:
> > Darren New <dne### [at] sanrrcom> wrote:
> >> I really have to wonder, sometimes, how far people are going to mutate C++ 
> >> before they just give up and decide they're done. :-)
> > 
> >   You make it sound like C++ is the only language which is constantly
> > being developed further by adding new features and new libraries (and
> > that this is somehow a negative thing?). That other currently used languages
> > are more or less "ready" and do not change much.

> No. But I think the current languages don't rewrite themselves as severely 
> as C++ does.

  Exactly how are they "rewriting" C++?

  C++0x will be basically fully compatible with the current C++ standard
(give or take a few minor things which will get deprecated). Only additional
functionality and libraries will be added. What rewrite?

> Other languages tend to add things, while C++ makes them 
> fundamental parts of the language.

  I don't understand. How are "adding things" and "making things fundamental
parts of the language" mutually exclusive?

  It's not like the new features would *replace* existing features. They
are pure additions. So I really don't see your point.

>  I'm assuming that the lambdas that C++ 
> is adding won't be just a library bit. If it is, then bleh, but OK.

  Lambdas will be at core language level in the exact same way as eg.
generics in Java are at cure language level. I don't see your problem.

> >   Of course that's pure BS. Most currently popular languages are being
> > constantly developed further and their libraries enhanced. Look at Java, C#
> > or the .NET framework. It's not that long ago that Java didn't even have
> > generics. Now it has them.

> Generics in Java are syntactic sugar. It still generates exactly the same 
> code as the equivalent source done in the obvious way.

  And lambdas in the new C++ are syntactic sugar. The compiler will generate
exactly the same machine code as if you had written a non-lambda function.
(The only difference is the internal name mangling.)

  They are a convenience feature. They will make a lot easier to write
generic code.

> > What is the current version of .NET? 3.something?

> Sure. And it has new syntax for new stuff, and it's cleanly integrated with 
> the rest of the language.

  You say it like the new C++ features aren't. Care to explain?

> >   Why do you deliberately make it sound like C++ is the only modern language
> > for which new features are being added?

> I'm not. I'm criticizing the way C++ adds new features, not that it does.

  Right. When other languages add new features (let's say, for example,
Java adding support for generics), that's ok. But when C++ adds new features,
that's something to be critiqued.

  No, you are not biased at all.

> Every new feature in C++ seems to be hurt by (1) not wanting to pay any 
> price if you don't use it,

  Care to explain how, for example, lambda functions would add some overhead
to the C++ language even when you don't use them?

> (2) not wanting to add any syntax for it,

  Have you even looked at how lambda functions will be written in the new
C++ standard? How is it not adding new syntax for it?

> and (3) 
> interacting poorly and confusingly with every other feature of the language.

  Care to elaborate?

> If C++ added lambdas and they actually had things like pointers to stack 
> frames and so on, I'd probably not be bothered. But I strongly suspect the 
> lambdas they add are going to have so much brokenness to deal with the lack 
> of automatic memory management and such that it's going to be harder to use 
> lambdas than to just declare your own functions. And I'm betting the syntax 
> will be so baroque it's going to be almost impossible to read without doing 
> parsing in your head, too. Looking the little I did at the Boost lambda's, 
> they're utterly awful compared to any other language with real lambdas built in.

  Good thing you are not prejudiced nor biased in the least.

> >   I don't know if I'm just being paranoid, but I honestly think that you
> > are doing this for the simple reason that you know that you are going to
> > troll me.

> No. I just don't like C++.

  And for that reason you have to constantly write prejudiced BS about it.

>  I think the way things get added to C++ is a bad 
> thing for a language.

  What way? Care to explain?

  And which way would you think would be better?

> When C# added LINQ, they didn't try to change the syntax of the language 
> without modifying the compiler.

  I don't even understand what you are saying there.

> Python added a lot of really ugly stuff under the covers, too. But it's 
> under the covers, and doesn't get in your way if you don't use it, and it's 
> usable for more than just the one idea the person thought of who suggested 
> it.

  First you critique C++ because the ideology is that new features don't
have any effect if you don't use it. Now you are praising Python for the
exact same thing, implying that in C++ new features *do* have some negative
effect even if you don't use them.

  You are not writing consistently.

  IMO you are just prejudiced and don't know what you are talking about.

-- 
                                                          - Warp


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.