S
scorpion53061
Hi All,
Is it possible this conversation has run its course and it may be time to
move on?
Is it possible this conversation has run its course and it may be time to
move on?
* Jon Skeet said:Separating == from = adds clarity - it makes it very easy to see the
difference between an assignment and a comparison. If there were two
different characters for the two different ideas, that would be even
better, IMO.
* "Cor said:I have only said that I disagree with the idea changing a program language
for a in my eyes seldom used situation.
There are people who want people not allow to drive in a car because that
can give accidents, do you want me to tell why I will allow to drive in a
car while I know it gives accidents. Altough accidents are not seldom.
* Jon Skeet said:But that's what the thread is about. This thread is *not* about "VB.NET
is better than C#" or vice versa. It's discussing whether or not the
single language "feature" of VB.NET allowing static member access
through an instance is a good idea or not.
I wasn't trying to extrapolate from this one VB.NET "feature" to VB.NET
itself - and no-one else in this thread has, as far as I can see.
Tom said:don't be so picky... Don and Cor both know what each other meant...
you see how annoying your messages can be
* "Tom Leylan said:Jon appears to be trying to educate people by mentioning a known fact. The
overloaded = operator is "known" to be a source of problems. This doesn't
mean that you ever once made the error (of course not) but when language
developers surveyed language users it turned out it was a source of errors.
But if it has never been a source of confusion why do you imagine that the
language developers separated them? Nothing else to do?
"known fact"... Driving a car can cause an accident. That's a known
fact too. Nevertheless, it doesn't make sense to forbid driving a car
and forcing people to use public transport systems instead. There are
lots of tools available in the world which make solving a problem
easier -- sometimes they have certain disadvantages if the person who
uses them isn't able to use them.
Mhm... They wanted to make a useless separation in order to make
their work easier.
Mhm... They wanted to make a useless separation in order to make their
work easier.
* "Tom Leylan said:The concepts behind driving a car and the design of a language are
completely different. The similarity (if you insist on trying to draw
parallels) is that they have added all manner of safety features since the
car was invented for one reason "it was proven to be dangerous"... that's
why the cabs are largely crush-proof, there is firewall, seatbelts are
required, turn signals were added, the gasoline you can put in it is
regulated and oh, yeah... a license (and insurance) is required to operate
one.
And if you were to take even a casual stroll through a hardware store
"prior" to attempting to convince people through lame arguments you would
see that all of the tools you are talking about have safety features added.
They were added because people inadvertantly (through normal use) could hurt
themselves or others.
* "One Handed Man said:You too !
Herfried K. Wagner said:I would say that both of them -- the programming language and the car --
are tools created to solve a "problem".
Only because it's different, it's not bad. Only because
somebody is not familiar with something, and consequently doesn't know
how to use it, it's not bad (by definition).
I never saw a professional (I don't claim to be one) programmer making a
mistake because of this feature of VB.NET. If I saw code making use of
the feature /and/ working incorrect, I knew that the person who wrote it
was not a professional. I often see beginners using this feature in a
wrong way. Yes, that's a fact and it's sometimes annoying if you have
to explain to a beginner why he /should not/ use this feature unless he
is sure that he understood it.
It's a dangerous tool, nobody doubts that. But it's a useful tool.
.NET has its safety features added too. Visual Basic .NET has its
"safety" features too. And it has a box filled with advanced tools
which should not be used by beginners -- they are for use by "Gods"
only.
Don't tell me that a professional programmer will access a shared member
through an instance member "accidentially". Maybe an option to hide
shared members when accessing properties/methods of an object in the
code editor would be fine.
There are people who want people not allow to drive in a car because that
can give accidents, do you want me to tell why I will allow to drive in a
car while I know it gives accidents. Altough accidents are not seldom.
* "Cor said:Maybe I did see it wrong, but I did not use a car accident as a metaphor for
a program error.
In my opinion you did change very much my the words Tom.
Or are you talking about the continuation from Herfried?
* "Tom Leylan said:They are also both composed of atoms... using a car as a metaphor for
computer programming doesn't work. They are trying to solve "different
problems" and with that comes a different set of criteria when weighing
alternative actions. You may as well argue that near lethal doses of
radiation should be given to "everybody" because "it can cure cancer in
some."
That's perfectly normal and nobody has suggested (ever) that "different is
bad." So you are correct. The thread clearly points out that "confusion"
exists.
As a general rule language developers try to reduce confusion. I
Another survey question for you all, if you are interested:
As you may know, in JScript.NET we have support for classes, including
static members. One thing that we (the ECMA committee) needs to decide is
whether static members can be seen from instances.
<end quote>
Whether you actually see something isn't the gauge is it? It isn't much of
a reach to "know" that programmer's do it.
And it doesn't mean they aren't professional.
They might be sloppy or perhaps just careless... or it might
mean they just don't see the problem. You make it sound like programmers
come in two flavors. What if they have programmed incredible software for
years and yet reference the static variable this way?
Are you going to scream "hey you're not a professional" well no need
to answer that I'm certain I can guess
It isn't particularly dangerous and it isn't particularly useful at all (or
perhaps you are describing something else.) Did you read the thread? It
used the word "confusing."
Well I'll bite... which advanced tools should not be used by beginners? And
where do you administer the tests so they know when they use them? Again
(and always again Herfried (search any thread we have ever had)) you aren't
answering questions, you are defending an undefendable position you have
taken.
Advanced tools (whatever your definition of that might be) aren't
"advanced" because they are especially dangerous. Gosh you yourself used a
car as an example... do you not consider that an advanced tool? Aren't cars
used by beginners? Aren't cars used by old folks, the nearly blind, the
habitually drunk, the teenager on a cell-phone? You want to prevent
somebody from using a datagrid or is the FTP component you think they need
special training on?
* "Cor said:(Just to give Tom a nice friendly escape, words are not always as strict as
C#)
)
;-)))
However I was looking for you yesterday, thought that we had the same idea
about this.
But there were not much I had to fight against and sometimes I love it like
yesterday.