473,386 Members | 1,720 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,386 software developers and data experts.

To STL or not to STL

Hi there,

I am interested to know if there are any C++ programmers who do not use STL.
I have been coding in C++ for a year or so now, although only recently have
I started a large(ish)-scale project. I do not use any STL, and I was
wondering if there are any others out there that program in C++ without
using STL? (Just to see if I am being stupid by not using it)

Thanks
Allan

--
Allan Bruce
Dept. of Computing Science
University of Aberdeen
Aberdeen AB24 3UE
Scotland, UK
Jul 19 '05 #1
41 2943
Allan Bruce <al*****@takeawayf2s.com> wrote:
I am interested to know if there are any C++ programmers who do not use STL.


Can't speeak for the others by I certainly do not build all the general
purpose containers myself. Why should I?

Andre'
Jul 19 '05 #2
Allan Bruce <al*****@takeawayf2s.com> spoke thus:
I am interested to know if there are any C++ programmers who do not use STL.
I have been coding in C++ for a year or so now, although only recently have
I started a large(ish)-scale project. I do not use any STL, and I was
wondering if there are any others out there that program in C++ without
using STL? (Just to see if I am being stupid by not using it)


FWIW, the director of programming at my company is an old DOS h4x0r, and he
long ago wrote code that completely wraps/replaces (I can't say which...) the
STL. His reasoning is that the STL (std::vectors, particularly), didn't
behave like he wanted, and anyway he's a real "reinvent a better wheel" type
of guy.

--
Christopher Benson-Manica | I *should* know what I'm talking about - if I
ataru(at)cyberspace.org | don't, I need to know. Flames welcome.
Jul 19 '05 #3
Allan Bruce wrote:

Hi there,

I am interested to know if there are any C++ programmers who do not use STL.
I have been coding in C++ for a year or so now, although only recently have
I started a large(ish)-scale project. I do not use any STL, and I was
wondering if there are any others out there that program in C++ without
using STL? (Just to see if I am being stupid by not using it)

Thanks
Allan

I'd say that the biggest group of programmers that don't use the
standard library would have to be those writing Windows apps using the
MFC library. Since MFC provides similar types of classes (strings,
containers), the majority of programmers that I know have little
knowledge of the standard library.
Jul 19 '05 #4
"Allan Bruce" <al*****@TAKEAWAYf2s.com> wrote in message news:<bm**********@news.freedom2surf.net>...
Hi there,

I am interested to know if there are any C++ programmers who do not use STL.
I have been coding in C++ for a year or so now, although only recently have
I started a large(ish)-scale project. I do not use any STL, and I was
wondering if there are any others out there that program in C++ without
using STL? (Just to see if I am being stupid by not using it)


me. Because it slows down the compilation too much (I hate waiting..)
Jul 19 '05 #5

"Allan Bruce" <al*****@TAKEAWAYf2s.com> wrote in message news:bm**********@news.freedom2surf.net...
Hi there,

I am interested to know if there are any C++ programmers who do not use STL.
I'm assuming by STL we're talking about the standard C++ library (as opposed to
the old thing called the STL which precedes it).

If they never use it, they've got their head stuck some where.
I have been coding in C++ for a year or so now, although only recently have
I started a large(ish)-scale project. I do not use any STL, and I was
wondering if there are any others out there that program in C++ without
using STL? (Just to see if I am being stupid by not using it)

Yes you are. If there is a feature supported by the library, you're better
off using it than rolling your own. They make things much simpler. For
example, vector and string both have reasonable copy/assignment/destruction
behavior which means you don't have to sit there managing memory with new and
delete.
Jul 19 '05 #6

"Christopher Benson-Manica" <at***@nospam.cyberspace.org> wrote in message news:bm**********@chessie.cirr.com...
behave like he wanted, and anyway he's a real "reinvent a better wheel" type


What makes you think his reinvented wheel is better?
..
Jul 19 '05 #7

"Graeme Cogger" <gr*******************@baesystems.com> wrote in message news:3F***************@baesystems.com...
I'd say that the biggest group of programmers that don't use the
standard library would have to be those writing Windows apps using the
MFC library. Since MFC provides similar types of classes (strings,
containers), the majority of programmers that I know have little
knowledge of the standard library.


The majority of people who think the world ends at the MFC boundary
perhaps. I wouldn't say a majority of C++ programmers.
Jul 19 '05 #8
Ron Natalie <ro*@sensor.com> spoke thus:
What makes you think his reinvented wheel is better?


Nothing, necessarily. His philosophy is that he'd rather debug his own code
rather than someone else's. I think the main reason we don't use the STL is
that he started writing code 20 years ago, and back then I imagine his code
may very well have been superior to the STL. One advantage is that when I
want a "standard" class to do something different, I've got the implementor of
the class sitting two desks away, and in 10 minutes I have what I want. The
disadvantage, of course, is that should I find employment elsewhere, my new
boss probably will not be pleased that I know nothing about the standard
template library.

--
Christopher Benson-Manica | I *should* know what I'm talking about - if I
ataru(at)cyberspace.org | don't, I need to know. Flames welcome.
Jul 19 '05 #9

"Christopher Benson-Manica" <at***@nospam.cyberspace.org> wrote in message news:bm**********@chessie.cirr.com...
Ron Natalie <ro*@sensor.com> spoke thus:
What makes you think his reinvented wheel is better?
Nothing, necessarily. His philosophy is that he'd rather debug his own code
rather than someone else's.


My philosophy is that the standard library is usually already debugged. Certainly
any bugs in it are much easier to deal with than reimplementing it and debugging
and providing ongoing support for an equivelent amout of code.
I think the main reason we don't use the STL is
that he started writing code 20 years ago, and back then I imagine his code
may very well have been superior to the STL.
That is true. C++ wasn't really usable more than about 10 years ago. I've been
programming in C since 1977. Times change. He needs to shed his antiquated
belief systems. Many people who transition to C++ suffer from this brain damage.
The
disadvantage, of course, is that should I find employment elsewhere, my new
boss probably will not be pleased that I know nothing about the standard
template library.


Absolutely, you'd have extreme difficulty with an interview here.
Jul 19 '05 #10

"Ron Natalie" <ro*@sensor.com> wrote in message
news:3f***********************@news.newshosting.co m...

"Graeme Cogger" <gr*******************@baesystems.com> wrote in message news:3F***************@baesystems.com...
I'd say that the biggest group of programmers that don't use the
standard library would have to be those writing Windows apps using the
MFC library. Since MFC provides similar types of classes (strings,
containers), the majority of programmers that I know have little
knowledge of the standard library.


The majority of people who think the world ends at the MFC boundary
perhaps. I wouldn't say a majority of C++ programmers.


I write quite a bit of Windows code myself, at first it was
only in C, but now moreso in C++. Guess what I use for string
handling, containers, and much of the i/o? Standard Library.
MFC? Ten-foot-pole, and all that. :-)

-Mike
Jul 19 '05 #11
"Ron Natalie" <ro*@sensor.com> wrote in message
news:3f***********************@news.newshosting.co m...

"Allan Bruce" <al*****@TAKEAWAYf2s.com> wrote in message news:bm**********@news.freedom2surf.net...
Hi there,

I am interested to know if there are any C++ programmers who do not use STL.
I'm assuming by STL we're talking about the standard C++ library (as opposed to the old thing called the STL which precedes it).

If they never use it, they've got their head stuck some where.
I have been coding in C++ for a year or so now, although only recently
have I started a large(ish)-scale project. I do not use any STL, and I was
wondering if there are any others out there that program in C++ without
using STL? (Just to see if I am being stupid by not using it)

Yes you are. If there is a feature supported by the library, you're

better off using it than rolling your own. They make things much simpler. For
example, vector and string both have reasonable copy/assignment/destruction behavior which means you don't have to sit there managing memory with new and delete.


Also IMO equally important, not only is the code portable to
other platforms without all the 'hand rolled' baggage, but it's
also 'comprehension portable'. Any good C++ programmer recognizes
e.g. std::vector<std::string> as quickly and readily as he does
e.g. a 'for' loop.

One might compare this concept with e.g. the consistent sizes,
shapes, and colors of various types of road signs as in the
U.S., IMO a Good Thing(tm). "Everybody knows what they mean."

Who needs to pause to actually *read* the word "stop" on a
stop-sign? A red and white octagon at an intersection immediately
conveys the message, allowing one to focus on other important
things, such as keeping an eye on that child on a bicycle riding
on the shoulder.

Those little rascals are just like program bugs, they'll dart
out in front of you with no warning. (Happened to me this morning,
that's what evoked the analogy.) Other than being a bit rattled
by the tire screech and my scolding, he's OK. :-)

-Mike
Jul 19 '05 #12


Mike Wahler wrote:


Also IMO equally important, not only is the code portable to
other platforms without all the 'hand rolled' baggage, but it's
also 'comprehension portable'. Any good C++ programmer recognizes
e.g. std::vector<std::string> as quickly and readily as he does
e.g. a 'for' loop.

One might compare this concept with e.g. the consistent sizes,
shapes, and colors of various types of road signs as in the
U.S., IMO a Good Thing(tm). "Everybody knows what they mean."


Aaahhhh. You mean the white "PED XING" painted on the street :-)
I had quite a funny time figuring out what that could mean when
visiting the US the first time. (Keep in mind: I am not a native
english speaker)

--
Karl Heinz Buchegger
kb******@gascad.at
Jul 19 '05 #13
Allan Bruce wrote:
Hi there,

I am interested to know if there are any C++ programmers who do not use STL.
I have been coding in C++ for a year or so now, although only recently have
I started a large(ish)-scale project. I do not use any STL, and I was
wondering if there are any others out there that program in C++ without
using STL? (Just to see if I am being stupid by not using it)


We don't use the standard library. Because when the decision
to move to C++ was made in 1990 the standard library didn't
exist. Most compilers didn't support templates, and as they
became available they was buggy, poorly implemented and non
standard across different platforms. Basically you couldn't
write a portable system that used templates.

Lists, sets, vectors, maps, strings, smart pointers etc were
developed in-house using the generic macros that were the
forerunners to templates. By the time the standard library
was stable enough to use, we had our own variants that had
been used throughout the company for a number of years.

If we were starting out today then we would use the standard
library, but currently there is no incentive to use the
standard library when our own variant already does the job.

Jul 19 '05 #14
"Allan Bruce" <al*****@TAKEAWAYf2s.com> wrote in message news:<bm**********@news.freedom2surf.net>...
[to STL or not as the subject says]

Think of it this way:
- The STL is available to anybody with a recent C++ compiler.
- The STL is far more likely to be transportable than any code
you write to replace it.
- The STL is documented in several very good texts.
- The previous includes how to make the STL peform efficiently
in very many common situations and applications.
- Also included is how to choose the right container for the job.
- Also included are many considerations on how to avoid trouble,
what contained objects are required to do or provide, how to
debug trouble, how to instrument things to see how things are
doing, how to prevent resource leaks, etc. etc.
- There are several good places to discuss the STL with experts,
one such place being here.
- There is an absolute boatload of available examples in STL.
- There are many experienced STL users. New team members are likely
to already be experienced with STL.
- There are web sites that compare compilers based on, among other
things, how well they implement the STL.
- Learning the STL, and learning it well, is likely to make you a
more attractive member of future development teams.

So, if you hack together some cobbled kludge to replace the STL:
- You won't find any examples.
- You will have to provide your own documentation.
- You won't get much help from experts.
- If you want to hire somebody to help on your project, you will
have to train them up in your hacked kludge.
- If it runs slowly, you won't get help on making it faster.
- If you have memory leaks, space issues, etc., there won't be
any articles in magazines to help you.
- Your experience with this hack is unlikely to make you a more
attractive member of future software development teams.

In other words, this is one of those cases where standardization
is a very good thing. As somebody else said, the only reason not
to use the STL would be if you were handed an existing library
that provided all the functionality you needed. For example,
MFC based apps might not use the STL. Though I usually do anyway,
on those occasions I write an MFC app.
Socks
Jul 19 '05 #15
WW
Mike Wahler wrote:
MFC? Ten-foot-pole, and all that. :-)


What does that mean?

--
WW aka Attila he Englishly challenged :-)
Jul 19 '05 #16
WW
Karl Heinz Buchegger wrote:
Aaahhhh. You mean the white "PED XING" painted on the street :-)
I had quite a funny time figuring out what that could mean when
visiting the US the first time.


Cross your legs? ;-)

--
WW aka Attila
Jul 19 '05 #17
"Karl Heinz Buchegger" <kb******@gascad.at> wrote in message
news:3F***************@gascad.at...

Mike Wahler wrote:

Also IMO equally important, not only is the code portable to
other platforms without all the 'hand rolled' baggage, but it's
also 'comprehension portable'. Any good C++ programmer recognizes
e.g. std::vector<std::string> as quickly and readily as he does
e.g. a 'for' loop.

One might compare this concept with e.g. the consistent sizes,
shapes, and colors of various types of road signs as in the
U.S., IMO a Good Thing(tm). "Everybody knows what they mean."
Aaahhhh. You mean the white "PED XING" painted on the street :-)


As I'm sure you've figured out by now, that's "Pedestrian
Crossing." But those are usually only found in the more
urban or suburban areas. "Stop signs" appear at any intersection
without electric light signals, urban area or not (with some
exceptions, e.g. "Yield" signs on lower traffic roads, again
with a standard color and shape -- yellow triangle.) Both
those types of sign, and many others, also often appear on
the bedroom doors or walls of juvenile delinquents. :-)

[End of driving lesson.] :-)
I had quite a funny time figuring out what that could mean when
visiting the US the first time. (Keep in mind: I am not a native
english speaker)


It means "Don't Zing the Peds" :-)

My mother recounted many such comprehension 'adventures'
during her six-month stay in Paris. (And she had taken
two years of French lessons in preparation for the trip. :-))

-Mike
Jul 19 '05 #18
Hi,

STL. It's fast to code, it is fast code.

A few reasons and examples from real life:

Even today just 1.5 hour before I would left work, a colleage came over he
had to figure out what records had been sent to another system. Now I'm
talking about millions of records. After figuring out that the first 30
characters for the where unique. I created a program with a set (this sorted
automatically so it can do a binary search), corrected headers and footers
in the file. I was finished with testing the program actually in 1.5 hours
(including the little research for uniqueness, creating the numbers file
etc.) Debugging time was nearly zero (ok, I forget about the headers at one
time). I was surprised about the speed myself since it had to do a lookup in
about 40 megabyte of data loaded in the set.

I have programmed in pure C and this would have taken a lot longer than
this.

I have never encountered a bug in the STL (and I use it all the time).

Sure, it does take a while before you get used to using it. But once you do
you will program faster than anyone in plain C. Not only that, I at
sometime, compared 20 lines of code almost entirely of STL stuff (with the
SGI hash_map) with someone else highly optimized C code of three pages long
(it performed the same function). I talked to him how much microseconds his
lookups took because I was very curious about that. The answer he gave was
nearly the same as I had (I believe it was something like 45 and 47), but I
am quite sure that coding 20 lines take less time than 3 pages of code not
to mention the latter takes more time to read and to debug.

At some time I had to maintain a program without manuals but with a lot of
code. I wondered how to get it up in case it would crash (management decided
no backups since the data was expendible). I read through the code, since
they used the STL a lot, this was reasonably to do. It would have been much
more difficult if I would have to dig through three times the code necessary
to acomplish the same without the STL.

Therefore I would say use and or learn STL, you will do yourself and others
a favor (and you look up to date with your C++ knowledge).

http://www.sgi.com/tech/stl/
Regards, Ron AF Greve
"Allan Bruce" <al*****@TAKEAWAYf2s.com> wrote in message
news:bm**********@news.freedom2surf.net...
Hi there,

I am interested to know if there are any C++ programmers who do not use STL. I have been coding in C++ for a year or so now, although only recently have I started a large(ish)-scale project. I do not use any STL, and I was
wondering if there are any others out there that program in C++ without
using STL? (Just to see if I am being stupid by not using it)

Thanks
Allan

--
Allan Bruce
Dept. of Computing Science
University of Aberdeen
Aberdeen AB24 3UE
Scotland, UK

Jul 19 '05 #19
"WW" <wo***@freemail.hu> wrote in message
news:bm**********@phys-news1.kolumbus.fi...
Mike Wahler wrote:
MFC? Ten-foot-pole, and all that. :-)


What does that mean?


A colloquialism (I don't know the origin). Referring to
something or someone considered undesirable, "I wouln't
touch that with a ten-foot-pole." Meaning essentially
"I would not touch that, or even go within ten feet of it."
(about three metres to you. :-))

-Mike
Jul 19 '05 #20
WW
Mike Wahler wrote:
"WW" <wo***@freemail.hu> wrote in message
news:bm**********@phys-news1.kolumbus.fi...
Mike Wahler wrote:
MFC? Ten-foot-pole, and all that. :-)


What does that mean?


A colloquialism (I don't know the origin). Referring to
something or someone considered undesirable, "I wouln't
touch that with a ten-foot-pole." Meaning essentially
"I would not touch that, or even go within ten feet of it."
(about three metres to you. :-))


Ah, OK. It is like the bone on the neck thing, then. :-)

--
WW aka Attila
Jul 19 '05 #21
WW <wo***@freemail.hu> spoke thus:
Mike Wahler wrote:
MFC? Ten-foot-pole, and all that. :-)
What does that mean?


Heh... in English, there is a phrase "I wouldn't touch ____ with a ten-foot
pole," meaning one wishes to stay as far away from ___ (whether ___ is a
particularly nasty person, situation, a grizzly bear, or MFC). FWIW, if I had
a ten-foot pole, I'd probably use it to bludgeon Bill Gates ;)

--
Christopher Benson-Manica | I *should* know what I'm talking about - if I
ataru(at)cyberspace.org | don't, I need to know. Flames welcome.
Jul 19 '05 #22

"Allan Bruce" <al*****@TAKEAWAYf2s.com> wrote in message
news:bm**********@news.freedom2surf.net...
Hi there,

I am interested to know if there are any C++ programmers who do not use STL. I have been coding in C++ for a year or so now, although only recently have I started a large(ish)-scale project. I do not use any STL, and I was
wondering if there are any others out there that program in C++ without
using STL? (Just to see if I am being stupid by not using it)


Well, I think I'd get pretty tired of constantly reinventing the wheel.
Depending on the project I've used Microsoft MFC, or Rogue Wave library, or
STL, etc. So if you don't use STL, I hope you're at *least* using *some*
library that at *least* gives you a string :-)
Jul 19 '05 #23

"Moonlit" <al******@jupiter.universe> wrote in message
news:3f***********************@news.xs4all.nl...

I have never encountered a bug in the STL (and I use it all the time).


Isn't that kind of like saying you've never encountered a bug in the C++
language?
Jul 19 '05 #24
Hi,

"jeffc" <no****@nowhere.com> wrote in message
news:3f********@news1.prserv.net...

"Moonlit" <al******@jupiter.universe> wrote in message
news:3f***********************@news.xs4all.nl...

I have never encountered a bug in the STL (and I use it all the time).
Isn't that kind of like saying you've never encountered a bug in the C++
language?

Nope!

That's kind of saying I never encountered a bug in the STL (as I said).

Still, I didn't say there isn't any bug in the STL, I just say I haven't
encountered any, despite I have used it for many years.

Ok, at some time hash_map's didn't seem to be supported by the g++ compiler,
you can still download the files from sgi
Regards, Ron AF Greve.

Jul 19 '05 #25
"Ron Natalie" <ro*@sensor.com> wrote in message news:<3f***********************@news.newshosting.c om>...
Yes you are. If there is a feature supported by the library, you're better
off using it than rolling your own. They make things much simpler. For
example, vector and string both have reasonable copy/assignment/destruction
behavior which means you don't have to sit there managing memory with new and
delete.


Read up on "move constructors" and you might change your opinion of
what is reasonable behavior.

Sam
Jul 19 '05 #26

"Moonlit" <al******@jupiter.universe> wrote in message news:3f***********************@news.xs4all.nl...
Ok, at some time hash_map's didn't seem to be supported by the g++ compiler,
you can still download the files from sgi

hash-maps are NOT part of the C++ standard library.

I've encountered bugs in the STL, but as of late, I've been able to live with them.
Jul 19 '05 #27

"Samuel Barber" <op*****@yahoo.com> wrote in message news:37**************************@posting.google.c om...
"Ron Natalie" <ro*@sensor.com> wrote in message news:<3f***********************@news.newshosting.c om>...
Yes you are. If there is a feature supported by the library, you're better
off using it than rolling your own. They make things much simpler. For
example, vector and string both have reasonable copy/assignment/destruction
behavior which means you don't have to sit there managing memory with new and
delete.


Read up on "move constructors" and you might change your opinion of
what is reasonable behavior.


That's a different issue. I'm talking about the copying and destruction of the
container itself (rather than the contained object).
Jul 19 '05 #28

"Ron Natalie" <ro*@sensor.com> wrote in message
news:3f*********************@news.newshosting.com. ..

"Moonlit" <al******@jupiter.universe> wrote in message news:3f***********************@news.xs4all.nl...
Ok, at some time hash_map's didn't seem to be supported by the g++ compiler, you can still download the files from sgi

hash-maps are NOT part of the C++ standard library.


100% percent correct. That's why I said you can still download them from
SGI.

At one time they where supported by the g++ compiler. If you think you are
not able to compile your old code you can still download them from the SGI
site.

Apart from that there really is no reason to NOT use the STL. The code is
faster than you write it yourself (if you have something even faster post it
here, please!) not to mention it takes very little effort to write. Just
follow the postings in this newsgroup and you know that if you would like to
use C++ you sure want to use the STL.
Regards, Ron AF Greve
Jul 19 '05 #29
JB
"WW" <wo***@freemail.hu> wrote in message news:<bm**********@phys-news1.kolumbus.fi>...
Mike Wahler wrote:
"WW" <wo***@freemail.hu> wrote in message
news:bm**********@phys-news1.kolumbus.fi...
Mike Wahler wrote:
MFC? Ten-foot-pole, and all that. :-)

What does that mean?


A colloquialism (I don't know the origin). Referring to
something or someone considered undesirable, "I wouln't
touch that with a ten-foot-pole." Meaning essentially
"I would not touch that, or even go within ten feet of it."
(about three metres to you. :-))


Ah, OK. It is like the bone on the neck thing, then. :-)


Bone on the neck?

--
JB, the Magyar-challenged ;-)
Jul 19 '05 #30
"Ron Natalie" <ro*@sensor.com> wrote in message news:<3f*********************@news.newshosting.com >...
"Samuel Barber" <op*****@yahoo.com> wrote in message news:37**************************@posting.google.c om...
"Ron Natalie" <ro*@sensor.com> wrote in message news:<3f***********************@news.newshosting.c om>...
Yes you are. If there is a feature supported by the library, you're better
off using it than rolling your own. They make things much simpler. For
example, vector and string both have reasonable copy/assignment/destruction
behavior which means you don't have to sit there managing memory with new and
delete.


Read up on "move constructors" and you might change your opinion of
what is reasonable behavior.


That's a different issue. I'm talking about the copying and destruction of the
container itself (rather than the contained object).


What's so wonderful about that? Usually, programmers go to great
lengths to avoid copying containers. C++ makes it all too easy to
write elegant code which is grossly inefficient, due to implicit
copying of large objects.

Sam
Jul 19 '05 #31
> > > > Yes you are. If there is a feature supported by the library,
you're better
> off using it than rolling your own. They make things much simpler.
Read up on "move constructors" and you might change your opinion of
what is reasonable behavior.
That's a different issue. I'm talking about the copying and destruction of the container itself (rather than the contained object).
What's so wonderful about that? Usually, programmers go to great
lengths to avoid copying containers. C++ makes it all too easy to
write elegant code which is grossly inefficient, due to implicit
copying of large objects. ? > What makes you think his reinvented wheel is better?


There are so many "wheel inventers". Ask yourself why.
And the best answer is: "STL makes it too easy to write elegant code which
is grossly inefficient" (not C++)

So are people inventing "wheels" like intrusive containers and so on.
Its strange that programmers are so happy with STL and just buy new computer
and
add xxxGB memory into it.

Second myth - portability - isnt so good also. If you live on windows
plaform only, then its o.k.,
but if you are not using main path, then you are in trouble.

Tõnu.
Jul 19 '05 #32


Moonlit wrote:

Hi,

"jeffc" <no****@nowhere.com> wrote in message
news:3f********@news1.prserv.net...

"Moonlit" <al******@jupiter.universe> wrote in message
news:3f***********************@news.xs4all.nl...

I have never encountered a bug in the STL (and I use it all the time).


Isn't that kind of like saying you've never encountered a bug in the C++
language?


Nope!

That's kind of saying I never encountered a bug in the STL (as I said).


jeffc ment: You didn't encounter a bug in the 'STL implementation you use'.
--
Karl Heinz Buchegger
kb******@gascad.at
Jul 19 '05 #33
WW
JB wrote:
> MFC? Ten-foot-pole, and all that. :-)

What does that mean?

A colloquialism (I don't know the origin). Referring to
something or someone considered undesirable, "I wouln't
touch that with a ten-foot-pole." Meaning essentially
"I would not touch that, or even go within ten feet of it."
(about three metres to you. :-))


Ah, OK. It is like the bone on the neck thing, then. :-)


Bone on the neck?


Another joke thing. He is so ugly, his parents hung a bone on a string on
his neck so at least the dogs will play with him.

--
WW aka Attila
Jul 19 '05 #34
Hi,

"Karl Heinz Buchegger" <kb******@gascad.at> wrote in message
news:3F***************@gascad.at...


Moonlit wrote:

Hi,

"jeffc" <no****@nowhere.com> wrote in message
news:3f********@news1.prserv.net...

"Moonlit" <al******@jupiter.universe> wrote in message
news:3f***********************@news.xs4all.nl...
>
> I have never encountered a bug in the STL (and I use it all the time).
Isn't that kind of like saying you've never encountered a bug in the C++ language?
Nope!

That's kind of saying I never encountered a bug in the STL (as I said).


jeffc ment: You didn't encounter a bug in the 'STL implementation you

use'.
What I meant with that sentence is; That if you write your own code, which
would implement the same functionality, you likely would spend a lot of time
debugging (unless you are some miracle coder of course). Since the STL is
already used by so many people it has been thoroughly tested (of course this
is true for any piece of code that is used by many people). I didn't say
there are no bugs in any implementation, I just say I didn't encountered any
and use it a lot mostly g++ but in VC++ too.

Regards, Ron AF Greve

--
Karl Heinz Buchegger
kb******@gascad.at

Jul 19 '05 #35


Moonlit wrote:

What I meant with that sentence is; That if you write your own code, which
would implement the same functionality, you likely would spend a lot of time
debugging (unless you are some miracle coder of course). Since the STL is
already used by so many people it has been thoroughly tested (of course this
is true for any piece of code that is used by many people). I didn't say
there are no bugs in any implementation, I just say I didn't encountered any
and use it a lot mostly g++ but in VC++ too.


You didn't get it.
The STL, just like C++, is just a specification. Of course you can't
find bugs in it. You may find inconsitencies in the descriptions of
what the functions and objects should do, but certainly not bugs.
Bugs are reserved for implementations.
jeffc's argumentation is on the level of correct usage of english language.

--
Karl Heinz Buchegger
kb******@gascad.at
Jul 19 '05 #36

"Karl Heinz Buchegger" <kb******@gascad.at> wrote in message
news:3F***************@gascad.at...


Moonlit wrote:

What I meant with that sentence is; That if you write your own code, which would implement the same functionality, you likely would spend a lot of time debugging (unless you are some miracle coder of course). Since the STL is already used by so many people it has been thoroughly tested (of course this is true for any piece of code that is used by many people). I didn't say
there are no bugs in any implementation, I just say I didn't encountered any and use it a lot mostly g++ but in VC++ too.

You didn't get it.
The STL, just like C++, is just a specification. Of course you can't
find bugs in it. You may find inconsitencies in the descriptions of
what the functions and objects should do, but certainly not bugs.
Bugs are reserved for implementations.
jeffc's argumentation is on the level of correct usage of english

language.

Nope you don't get it. The abbreviation also referres to any STL
implementation as well. And if you see them I am talking about bugs you
should have known that I was referring to any STL implementation.

If you donwload the standard template library from the sgi site, you are not
downloading the specs but the implementation.

Period.

Regards, Ron AF Greve.
--
Karl Heinz Buchegger
kb******@gascad.at

Jul 19 '05 #37


Moonlit wrote:
Nope you don't get it. The abbreviation also referres to any STL
implementation as well. And if you see them I am talking about bugs you
should have known that I was referring to any STL implementation.
Interesting.
So when saying: You didn't find any bugs in the STL, you are referring
to any (but no specific) STL implementation.

If you donwload the standard template library from the sgi site, you are not
downloading the specs but the implementation.


I am downloading a specific STL. But unless I mention which one
in specific, the phrase 'bugs in STL' has no meaning.

'I found some bugs in sgi's implementation of STL' has a meaning

'I found no bugs in Dinkumware's STL' has a meaning

'I didn't find bugs in all STL implementations I used up to know' has a meaning

'I found a bug in the STL' has *no* meaning. What is *THE STL*? Who made it?
Where can I get more information about that? *The STL* is just a stack of papers.

--
Karl Heinz Buchegger
kb******@gascad.at
Jul 19 '05 #38

"Moonlit" <al******@jupiter.universe> wrote in message
news:3f***********************@news.xs4all.nl...

I have never encountered a bug in the STL (and I use it all the time).


Isn't that kind of like saying you've never encountered a bug in the C++
language?


Nope!

That's kind of saying I never encountered a bug in the STL (as I said).

Still, I didn't say there isn't any bug in the STL, I just say I haven't
encountered any, despite I have used it for many years.


No, you haven't used the "STL", you've used a particular implementation of
it. That's *like* saying you've used a particular implementation of C++.
People don't find bugs in C++, they find bugs in C++ compilers.
Jul 19 '05 #39

"Moonlit" <al******@jupiter.universe> wrote in message
news:3f***********************@news.xs4all.nl...

Nope you don't get it. The abbreviation also referres to any STL
implementation as well. And if you see them I am talking about bugs you
should have known that I was referring to any STL implementation.


Your statement that you haven't found any bugs in STL is meaningless unless
you've used every STL implementation. It's like saying you've never found
any bugs in C++ and oh by the way, you've written programs only for the
Bombastic 2000 compiler. It doesn't make any sense. What you mean is you
haven't found any bugs in g++ or VC++, although you haven't used VC++ much.
Jul 19 '05 #40
Samuel Barber wrote:

What's so wonderful about that? Usually, programmers go to great
lengths to avoid copying containers. C++ makes it all too easy to
write elegant code which is grossly inefficient, due to implicit
copying of large objects.


Some guidelines make copy constructors and assignment
operators private, to avoid such problems. Instead the
recommendation is to have explicit methods on the class that
have to be called.

Jul 19 '05 #41
Ron Natalie <ro*@sensor.com> spoke thus:

My philosophy is that the standard library is usually already debugged. Certainly
any bugs in it are much easier to deal with than reimplementing it and debugging
and providing ongoing support for an equivelent amout of code.
Not so much in the STL (since he never uses it...), but in other code
libraries, he's had to "roll his own" since it was completely impossible to
get what he wanted otherwise. For example (if you'll excuse my venture into
OT territory...), Microsoft and Borland have facilities for dealing with dates
and times, but apparently they just don't work right for our purposes.
That is true. C++ wasn't really usable more than about 10 years ago. I've been
programming in C since 1977. Times change. He needs to shed his antiquated
belief systems. Many people who transition to C++ suffer from this brain damage.
Quite possibly, although that's not really one can say to one's boss ;) At
this point, he's really already done all the work anyway, so from his
perspective his code is superior, since he doesn't have to learn how to use
it (as he might with the STL).
Absolutely, you'd have extreme difficulty with an interview here.


I may have to invest some time in self-teaching myself, since I don't imagine
I'll be working here for the next 40 years. The problem I always have is
finding some meaningful task to accomplish - I've never been able to just read
a book and get anything useful out of it, or even do silly little tutorial
programs and get anything out of them. What to do...

--
Christopher Benson-Manica | I *should* know what I'm talking about - if I
ataru(at)cyberspace.org | don't, I need to know. Flames welcome.
Jul 19 '05 #42

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

3
by: William C. White | last post by:
Does anyone know of a way to use PHP /w Authorize.net AIM without using cURL? Our website is hosted on a shared drive and the webhost company doesn't installed additional software (such as cURL)...
2
by: Albert Ahtenberg | last post by:
Hello, I don't know if it is only me but I was sure that header("Location:url") redirects the browser instantly to URL, or at least stops the execution of the code. But appearantely it continues...
3
by: James | last post by:
Hi, I have a form with 2 fields. 'A' 'B' The user completes one of the fields and the form is submitted. On the results page I want to run a query, but this will change subject to which...
0
by: Ollivier Robert | last post by:
Hello, I'm trying to link PHP with Oracle 9.2.0/OCI8 with gcc 3.2.3 on a Solaris9 system. The link succeeds but everytime I try to run php, I get a SEGV from inside the libcnltsh.so library. ...
1
by: Richard Galli | last post by:
I want viewers to compare state laws on a single subject. Imagine a three-column table with a drop-down box on the top. A viewer selects a state from the list, and that state's text fills the...
4
by: Albert Ahtenberg | last post by:
Hello, I have two questions. 1. When the user presses the back button and returns to a form he filled the form is reseted. How do I leave there the values he inserted? 2. When the...
1
by: inderjit S Gabrie | last post by:
Hi all Here is the scenerio ...is it possibly to do this... i am getting valid course dates output on to a web which i have designed ....all is okay so far , look at the following web url ...
2
by: Jack | last post by:
Hi All, What is the PHP equivilent of Oracle bind variables in a SQL statement, e.g. select x from y where z=:parameter Which in asp/jsp would be followed by some statements to bind a value...
3
by: Sandwick | last post by:
I am trying to change the size of a drawing so they are all 3x3. the script below is what i was trying to use to cut it in half ... I get errors. I can display the normal picture but not the...
0
by: taylorcarr | last post by:
A Canon printer is a smart device known for being advanced, efficient, and reliable. It is designed for home, office, and hybrid workspace use and can also be used for a variety of purposes. However,...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: aa123db | last post by:
Variable and constants Use var or let for variables and const fror constants. Var foo ='bar'; Let foo ='bar';const baz ='bar'; Functions function $name$ ($parameters$) { } ...
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.