🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: be.comp.programming
Article #10992

Re: oproep aan de programmeurs:wat moet ik kiezen ?

#10992
From: Frans Bouma
Date: Wed, 20 Feb 2002 12:44
44 lines
3926 bytes
"Sjoerd Schreuder" <sa_schreuder@wanadoo.nl> wrote in message news:3C738757.357F8C3C@wanadoo.nl...
> Frans Bouma wrote:
> > "Sjoerd Schreuder" <sa_schreuder@wanadoo.nl> wrote in message news:3C72C0C2.2CB31695@wanadoo.nl...
> > > C++ is een taal die ontworpen is om te performen, en om optimaliseerbaar
> > > te zijn.
> >
> >     dat laatste lijkt me wat uit de lucht gegrepen, omdat C++ een stuk
> >     minder te optimaliseren is dan bv C.
>
> Waar baseer je dat op?

    op de tijd die het gekost heeft om de C++ compilers
    code te laten genereren die up to par is met C compilers.

> De C constructies zijn in C++ net zo goed te optimaliseren als in C.
> De extra constructies die C++ toevoegt, mist C. Maar als je die niet
> gebruikt, betaal je ook niet in performance ervoor.

    dat klopt.

> Verder is C++ op minstens 1 ding in de praktijk beter optimaliseerbaar
> dan C, hetgeen bewezen wordt door het feit dat std::sort in de praktijk
> sneller is dan qsort.

    dat kan aan de C-runtime implementatie liggen van qsort natuurlijk.

> Maar laat ik het simpel houden: ik beweer dat C++ net zo optimaliseerbaar
> is als C. Jij zegt van niet. Kun je een tegenvoorbeeld geven waar een
> C++ compiler minder kan optimaliseren dan een C compiler?

    C++ moet worden geconverteerd van een OO approach naar een procedural
    approach om optimaal op assembler te kunnen worden afgebeeld, immers
    de CPU is procedural. Tijdverlies in C++ code komt niet door het
    compileren van 1 big-mamma class met alle methods, maar door het
    optimaliseren van constructor/destructor trees (dus object creatie
    in method A, waarbij onderwater meerdere objects worden gecreeerd etc).

    Je hebt dus bij pure C++ code een extra optimalisatiestap nodig om
    de code net zo snel, zoniet sneller, te maken dan pure C, omdat
    men bij pure C het veelal al heeft uitgeprogrammeerd zoals een
    processor het logischerwijze zou uitvoeren. Dat is bij C++ niet
    altijd het geval.

    FB
Technical Details
Message-ID: <3c739b38$0$212$e4fe514c@dreader4.news.xs4all.nl>
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!supernews.com!news.tele.dk!small.news.tele.dk!128.230.129.106!news.maxwell.syr.edu!transit.news.xs4all.nl!rhinewceros.xs4all.nl!not-for-mail
References: <uXu88.122912$rt4.11582@afrodite.telenet-ops.be> <1013109746.799866@seven.kulnet.kuleuven.ac.be> <3C63C40B.BA1DDAA9@iae.nl> <1013181054.194148@seven.kulnet.kuleuven.ac.be> <3C63EE8A.DEE29046@iae.nl> <1013187868.875791@seven.kulnet.kuleuven.ac.be> <3c6c35f1.5840688@newszilla.xs4all.nl> <1013742119.309832@seven.kulnet.kuleuven.ac.be> <3c6e35cf.1533535@newszilla.xs4all.nl> <1013895537.659605@seven.kulnet.kuleuven.ac.be> <3c6fefb8.1216829@newszilla.xs4all.nl> <1013973821.829929@seven.kulnet.kuleuven.ac.be> <%3Ub8.27957$ql6.2438153@zwoll1.home.nl> <1013994968.717889@seven.kulnet.kuleuven.ac.be> <3C706D11.C90F42C2@wanadoo.nl> <1014049007.567811@seven.kulnet.kuleuven.ac.be> <3C71356C.369677EC@wanadoo.nl> <1014138117.990176@seven.kulnet.kuleuven.ac.be> <3C72C0C2.2CB31695@wanadoo.nl> <3c7369ff$0$4576$e4fe514c@dreader3.news.xs4all.nl> <3C738757.357F8C3C@wanadoo.nl>

Show Full Headers
Complete Article Headers
X-Google-Language: DUTCH,ASCII-7-bit
X-Google-Thread: 107324,65d4c4d6a1e8dc39
X-Google-Attributes: gid107324,public
X-Google-Thread: fcea4,65d4c4d6a1e8dc39
X-Google-Attributes: gidfcea4,public
X-Google-ArrivalTime: 2002-02-20 04:44:52 PST
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!supernews.com!news.tele.dk!small.news.tele.dk!128.230.129.106!news.maxwell.syr.edu!transit.news.xs4all.nl!rhinewceros.xs4all.nl!not-for-mail
Reply-To: "Frans Bouma" <perseus@xs4all.nl>
From: "Frans Bouma" <perseus@xs4all.nl>
Newsgroups: be.comp.programming,nl.comp.programmeren
References: <uXu88.122912$rt4.11582@afrodite.telenet-ops.be> <1013109746.799866@seven.kulnet.kuleuven.ac.be> <3C63C40B.BA1DDAA9@iae.nl> <1013181054.194148@seven.kulnet.kuleuven.ac.be> <3C63EE8A.DEE29046@iae.nl> <1013187868.875791@seven.kulnet.kuleuven.ac.be> <3c6c35f1.5840688@newszilla.xs4all.nl> <1013742119.309832@seven.kulnet.kuleuven.ac.be> <3c6e35cf.1533535@newszilla.xs4all.nl> <1013895537.659605@seven.kulnet.kuleuven.ac.be> <3c6fefb8.1216829@newszilla.xs4all.nl> <1013973821.829929@seven.kulnet.kuleuven.ac.be> <%3Ub8.27957$ql6.2438153@zwoll1.home.nl> <1013994968.717889@seven.kulnet.kuleuven.ac.be> <3C706D11.C90F42C2@wanadoo.nl> <1014049007.567811@seven.kulnet.kuleuven.ac.be> <3C71356C.369677EC@wanadoo.nl> <1014138117.990176@seven.kulnet.kuleuven.ac.be> <3C72C0C2.2CB31695@wanadoo.nl> <3c7369ff$0$4576$e4fe514c@dreader3.news.xs4all.nl> <3C738757.357F8C3C@wanadoo.nl>
Subject: Re: oproep aan de programmeurs:wat moet ik kiezen ?
Date: Wed, 20 Feb 2002 13:44:24 +0100
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2600.0000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Lines: 48
Message-ID: <3c739b38$0$212$e4fe514c@dreader4.news.xs4all.nl>
NNTP-Posting-Host: 213.84.90.73
X-Trace: 1014209336 dreader4.news.xs4all.nl 212 213.84.90.73