Re: Book recommendations: Generic programming
on Wed Mar 21 2007, "Rune Allnor" <allnor-AT-tele.ntnu.no> wrote:
On 20 Mar, 19:01, David Abrahams <d...@boost-consulting.com> wrote:
on Tue Mar 20 2007, "Rune Allnor" <allnor-AT-tele.ntnu.no> wrote:
Only a couple of days a go did I find a text where a key
property of the STL was spelled out: Template libraries
require substantia parts of the code to be visible to the
compiler at all times, so these libraries are implemented
as mere header files, and can easily be optimized and
inlined by the compiler.
Which text was that, BTW?
Well, that's a small but significant part of it.
Certainly significant. With my backcground, I did not
see the STL as a means of increasing efficiency; I saw
it as something which possibly introduced crippling
run-time overhead. Textbook authors ought to make
that point explicit, or they risk shunning not-so-
up-to-date amateurs like me away from the language.
Sure. My point was that inlining is only a small part of the reason
for the STL's efficiency. Even C99 has inline, IIRC, but it can't
handle abstraction with the same efficiency (see below).
The other major part is the preservation of type information which,
in an OO-style program, would be lost at the inner layer. Having
the type information inside the abstractions means that you can
directly invoke the implementations of generic operations that are
most appropriate to the concrete types involved.
--
Dave Abrahams
Boost Consulting
www.boost-consulting.com
[ See http://www.gotw.ca/resources/clcm.htm for info about ]
[ comp.lang.c++.moderated. First time posters: Do this! ]