| Furry Guy wrote: | 
|---|
| Your objections about speed, readability and maintainability are VERY subjective | 
| Well-written code using the STL can rival "roll your own code" any day. | 
| I don't mean to cause a flamewar | 
| helios wrote: | 
|---|
| Can you give an example? | 
| Furry Guy wrote: | 
|---|
| The STL is written by people, read LOTS, who eat, sleep and live coding. | 
| Compile time is NOT performance when running the compiled code. | 
| helios wrote: | 
|---|
| Can you give an example? | 
| Ceres Solver is 154 times faster in Release than in Debug. That's quite ridiculous. | 
The STL (by I assume you mean the Standard Library) isn't a singular entity written by an elite squad of programmers.  | 
| jlb wrote: | 
|---|
| With what compiler? | 
| Debug builds will usually be slower for several reasons | 
| The STL should not be confused with the standard library. The standard language is a different entity, you can make a program that doesn't use the STL but it will still be using the standard library. | 
| Oh and I would say that both the STL and standard library are written by elite squads of programmers. | 
| Visual Studio 2015. | 
| I am stating that extensively using templates within your project can severly reduce your Debug build performance. | 
| Given that the standard library is a heavily templated library, | 
| Since a software developer spends most of their time debugging and maintaining code, this is very undesirable. | 
| The STL is the older library from the 90s that preceded the first C++ standard library. | 
| jlb wrote: | 
|---|
| No, the STL, as we know it today, was not even part of the early pre-standard language | 
| Templates were added after the standard | 
| cppreference wrote: | 
|---|
| 1990: The Annotated C++ Reference Manual This book described the language as designed, including some features that were not yet implemented. It served as the de-facto standard until the ISO. New features: namespaces, exception handling, nested classes, templates  | 
| wikipedia wrote: | 
|---|
The Standard Template Library (STL) is a software library for the C++ programming language that influenced many parts of the C++ Standard Library. It provides four components called algorithms, containers, functions, and iterators. ... Implementations Original STL implementation by Stepanov and Lee. 1994, Hewlett-Packard. No longer maintained.  | 
| jlb wrote: | 
|---|
| No the standard library is not heavily templates, in fact it has few if any template instances. | 
| With templates you usually have longer compile times and binary size | 
| but usually they don't affect runtime speed | 
| Is The Standard Library Really That Useful? | 
| As I find myself becoming more and more seasoned, I find that I use the standard library much less and less. At first, I made quite an effort to use "modern C++" (at this time this was C++11). | 
| Now, I find that using the standard library is quite distasteful for the most part. It's pretty bloated | 
| Takes forever to compile | 
| The code itself is completely unreadable | 
| Don't get me wrong- I'm no C purist. I love C++11 threads, I use vectors and strings in certain areas, auto-for-loops (is that what they're called? lol), etc, but I find that specialized, POD, data structures typically beat the "idiomatic" equivalent both in speed, readability, and mantainability. | 
| Am I the only one who feels like this? | 
| JagerDesu wrote: | 
|---|
| As I find myself becoming more and more seasoned, I find that I use the standard library much less and less. | 
| JagerDesu wrote: | 
|---|
| code itself is completely unreadable with literally all major compilers | 
| JagerDesu wrote: | 
|---|
| as time goes on I typically end up rewriting it in a more C-with-classes fashion.[...] I find that specialized, POD, data structures typically beat the "idiomatic" equivalent both in speed, readability, and mantainability. | 
| JagerDesu wrote: | 
|---|
| such as games [...] Am I the only one who feels like this? |