From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM autolearn=ham autolearn_force=no version=3.4.4 X-Google-Thread: 109fba,cd8ed9115942852f X-Google-NewGroupId: yes X-Google-Thread: 103376,b92b95c9b5585075 X-Google-NewGroupId: yes X-Google-Attributes: gid4f1905883f,gida07f3367d7,domainid0,public,usenet X-Google-Language: ENGLISH,ASCII Path: g2news1.google.com!postnews.google.com!w18g2000yqc.googlegroups.com!not-for-mail From: Nick Keighley Newsgroups: comp.lang.c++,comp.lang.ada Subject: Re: Why use C++? Date: Tue, 16 Aug 2011 02:52:27 -0700 (PDT) Organization: http://groups.google.com Message-ID: <620cf34f-d008-4855-9945-ae7247221377@w18g2000yqc.googlegroups.com> References: <1fd0cc9b-859d-428e-b68a-11e34de84225@gz10g2000vbb.googlegroups.com> <9ag33sFmuaU1@mid.individual.net> <1d8wyhvpcmpkd.ggiui9vebmtl.dlg@40tude.net> <150vz10ihvb5a.1lysmewa1muz4$.dlg@40tude.net> <1q4c610mmuxn7$.1k6s78wa0r8fj.dlg@40tude.net> <1vn800hbyx8k4$.1lsveclj56197$.dlg@40tude.net> <1gu6ni1yb54k3$.4nbvfqqndl8m$.dlg@40tude.net> NNTP-Posting-Host: 213.123.60.87 Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable X-Trace: posting.google.com 1313488347 11764 127.0.0.1 (16 Aug 2011 09:52:27 GMT) X-Complaints-To: groups-abuse@google.com NNTP-Posting-Date: Tue, 16 Aug 2011 09:52:27 +0000 (UTC) Complaints-To: groups-abuse@google.com Injection-Info: w18g2000yqc.googlegroups.com; posting-host=213.123.60.87; posting-account=sLi3rQoAAAB6wjiwo9v8I7Xw7Kf7_67C User-Agent: G2/1.0 X-HTTP-Via: 1.1 KHHQ-XS-XXISA01 X-Google-Web-Client: true X-Google-Header-Order: VCRUHALNK X-HTTP-UserAgent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; GTB6.5; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; .NET4.0C; .NET4.0E),gzip(gfe) Xref: g2news1.google.com comp.lang.c++:83039 comp.lang.ada:20644 Date: 2011-08-16T02:52:27-07:00 List-Id: On Aug 16, 9:47=A0am, "Dmitry A. Kazakov" wrote: > On Tue, 16 Aug 2011 01:18:31 -0700 (PDT), Nick Keighley wrote: > >> 2. I don't care about the platform, I care about what the program is > >> supposed to do. The type's properties shall be defined by the applicat= ion > >> domain. > > > whilst this degree of abstraction is often good the ability to fiddle > > with representaion is also sometimes useful. > > Never. It is a strong claim, but it holds. The cases of which you believe > you have to handle the type's layout, are those where the *application* > domain is the machine hardware itself. There exist such rare cases, but > they represent no exception to what I said. this reminds of the maths that states a quadratic equation always has two roots (solutions). Those cases where there seems to only one root is actaully two roots both with the same value. You attempt to win the argument by definition engineering. > > And if we want our > > programs to terminate before the sun goes cold knowing about > > representaion is sometimes useful. > > A premature optimization does not guaranty you anything about performance= , > in fact the opposite. Unless your claim is that a deliberate use of a wro= ng > representation (e.g. shorter than required) might result in a better > performance, due to malfunction. I'm simply arguning that in the real world performance sometimes matters. This may involve getting down and dirty with the representaion and other (usually) implementation details.