ImpalerCore said:
I wanted to isolate this one because I do think that this is probably
the strongest side-effect/deficiency of "standardization". I fear
that the next generation of programmers (and I'm one of them) may lack
the 'under-the-hood' understanding because of the increasing
encapsulation found in programming languages. For example, I haven't
programmed very little assembly, and it's obvious that it does hurt my
understanding of concepts described by some of the veterans here.
Okay, you seem to have a habit at looking at the issue with the glass
half-empty, or maybe 3/4 empty.
It's my job to focus on problems and solutions. If everything is A-OK,
then I have to go looking for something else to do. When the tools are
the problem though, then it's a BIG problem.
Sorry, but history has shown that the
concept of having a standard in general simplifies issues rather than
complicates them.
Generalizations are pretty much useless. But in the context of the
discussion, there can be had facts about language library standards:
Initially they can be good because the "get everyone on the same page"
and thereby enable integration. Everyone doesn't need that though and it
is a very fine-grained focus. A problem is that they are usually
"one-size-fits-all" or not good to begin with or just plainly and simply
the wrong thing (to be found out later maybe). As it becomes more
entrenched, it hangs around too long and because of that progress is
stifled (example: std::string in C++). A standard library, if taken as
"the last word", is like saying that the a dump truck (gotta meet
large-scale requirements remember) should be the standard vehicle that
everyone should drive. It's silly to think that "one-size" can "fit all".
The largest benefit of code standardization is not in the content of
the standard itself, but as a common communication language between
developers and users.
That is but one thing amongst many. Some may not need that and would be
better served by having more choices. Knowing how these things change,
the above "requirement" is rather short-term focused (unless one is being
grandiose). I didn't put the standards there, but it would be interesting
to know what those who did think now (if you could get them to actually
tell you instead of just politicing which is another thing entirely).
Pretend there is no C standard library. How
many different names and versions of 'strlen' would be out there?
Surely we would have had the right thing by now if there wasn't a
standard C library, IMO. That everyone else is jumping off of a cliff
does not make it a good idea to jump also. That there is a "standard"
library, doesn't mean, of course, that someone/team has to use it. That
choice probably needs more consideration. I think it's a no-brainer to
rethink everything all the time and I am more long-term focused than just
getting something going that works. "Slow and steady...", lol.
In
the end, you'd probably write it from scratch every time, and everyone
other "you" would do the same.
Why would someone write it from scratch if they built it already for the
last project? Adapt it and evolve it probably, but the major work was
done on the last project.
2 things. Standardization that happens to early is like putting source
code into the control system for all the team to hack on/at before it is
time to do so. Secondly, reviews and improvement and just plain ol
replacement doesn't happen often enough. But that's what they mean by a
standard language being dead (I did not coin that).
What a standard buys you is that you
or I can look at the strlen function and have an intuitive
understanding of what it's supposed to do. It may not be what you
want all the time, but if a sufficiently large enough number of people
can agree on it, I believe it's worth the effort.
I'm not debating "standards", just the "one and only" mantra, and THAT is
what most people mean by it. Standard at the language proper level OK, at
least not as bad as at the library level. I was evolving a library for
C++ when Rogue Wave's Tools.h++ came out and that stopped me from
pursuing my own library further. Big mistake, in retrospect. STL and the
standard library probably killed off other Roque Wave-like companies and
therefor that further engineering never happened.
It seems that you and the early C++ proponents would disagree that the
STL is a good thing, and that's fine.
It surely has its place. At its age now, probably only a place in
history. (RIP!
).
People like you were in the
minority when C++ was being standardized, and the committee voted it
in.
It's definitely a clique.
I'd rather live by a democracy of the many than a dictatorship of
the few.
It's always easier just to follow (until the lead sheep jumps off the
cliff).
However, in contrast with some of the attitude displayed
here, I prefer to hear your voice of dissent even if I don't agree
with it.
I am not dissenting. The key is that if it's not worth doing right, then
it's not worth doing IMO.
I'm sorry, but are you the sheriff of this here parts? Show me the
badge.
Ha ha.
That's a flaw of all humans in some form or another.
Somehow I get the impression that programmers are most afflicted. (That
was a joke).
Again, another human flaw. Just keep in mind that its the flaws that
keep life interesting.
Rather, it suppress, represses, oppresses. I don't find that
"interesting" at all.
I think you have a point here, and I pretty well agree with it. It's
the exact same problem with trying to get a standard C container
library adopted.
This whole fascination with "there can only be and must only be one"
escapes me. "it slices! it dices! it removes warts!". Eww!
Appointed/annointed/blah-blah. It's a library. Build it, market it and
sell it. If no one buys it, it's crap or no one wants or needs it. Of
course if there was cost involved, THEN there WOULD be viability
research, etc. Put it up on SourceForge or somewhere if you think that
jumping right into to code on a whim is professional. I think it is very
Un.
For example, Navia may come out with a superior
library to what I'm using, but because I've been using what I've got
for so long, it's much harder to wrestle me away to use something
else. I don't see the problem going away anytime soon.
A long time ago (before C++), was the time to solicit submissions for C.
That time has passed IMO. A C library in C style could be had pretty
easily. Doing the OO thing with C is useless IMO, surely not within the
domain of a C standard library, but what do I know. I'm just a lurker.
No, I believe the intent is that it supposes to be a good-thing-for-
most-people.
Close enough to what I said.
Perhaps, but I have no idea how pervasive that issue is. Maybe you've
had a string of bad luck with it.
Punny (rhymes with "funny"). It's just obsolete (and it was never the
right thing anyway, but maybe it's an inherent design fault in the
languages lower foundation, surely). Here we have a perfect example of
why a standard library is bad.
Let me ask you a question if you don't mind. Do you think the
standardization of the C library portion as given in the standard in
1989 was overall a mistake?
"mistake" is the wrong word. It's not their fault, they didn't know any
better. Did it happen too soon? Did it stay too long? Probably yes on
those 2 questions, I wasn't there so I don't know what the existing and
potential user base was at the time. Same as I don't know what it is
today and would not embark on such a thing without first finding that out
and other things. My incling says that there is a user group that may
want something, but to put it in the standard, I think that is probably
worse today then back then because there are so many more ways to skin
the proverbial cat so there is no way to dictate a standard, or at least
it's oxymoronish for it would only serve a segment of the user base (I'm
hypothesizing). But again, that can be determined a priori so why not go
about it diligently. If it's worth doing, it's worth doing right. If I
thought I could build the bestest library ever for C and it was a "sure
thing", I would make it and put a price tag on it. Now if I wasn't
confident enough that there wasn't low enough risk, I would investigate
that rather than just trying to spread around the risk inherent to sloppy
project planning. (Not that I'm a nice guy or anything though).
I probably shouldn't post when it's past my bedtime, but yaz seem like a
spirited bunch who like each other, so what the heck. Maybe some of it is
coherent. LOL. Goodnight. Have fun.