473,480 Members | 1,871 Online
Bytes | Software Development & Data Engineering Community
Create Post

Home Posts Topics Members FAQ

Is VB Caca??

Don

I realize that this may sound like a troll but it is not intended to
be.

I haven't been reading this group but I've seen a number of
vociferious postings lately saying that "vb dotnet doesn't work".

Is that a widely held belief or is it just the same complaning that
goes on with all development tools??

Thanks,

Don
Bothell, WA
Mar 17 '07 #1
196 5344
I'm not sure I would say that there are a number of postings indicating
VB.NET doesn't work in the first place.

Of course it works. Not to mention that VB.NET isn't a development tool,
it's a programming language. Visual Studio .NET is a development tool.

"Don" <don81846@NO_CaCa.Earthlink.netwrote in message
news:ig********************************@4ax.com...
>
I realize that this may sound like a troll but it is not intended to
be.

I haven't been reading this group but I've seen a number of
vociferious postings lately saying that "vb dotnet doesn't work".

Is that a widely held belief or is it just the same complaning that
goes on with all development tools??

Thanks,

Don
Bothell, WA

Mar 17 '07 #2
Don wrote:
I realize that this may sound like a troll but it is not intended to
be.

I haven't been reading this group but I've seen a number of
vociferious postings lately saying that "vb dotnet doesn't work".

Is that a widely held belief or is it just the same complaning that
goes on with all development tools??

Thanks,

Don
Bothell, WA
It's mostly just the ordinary complaints from people who don't really
understand what they are complaining about.

VB.NET does work, and pretty well too. Personally I don't care much for
the VB language, but I must still say that VB.NET is a huge leap forward
from VB 6. VB.NET is a truly object oriented language, which is a big
difference from the hardly more than pathetic support for object
orientation in VB 6.

VB.NET still suffers a bit from the BASIC syntax, and also some
sacrifices has been made to keep the syntax more like VB 6, but nothing
so serious as to say that it doesn't work.

--
Göran Andersson
_____
http://www.guffa.com
Mar 17 '07 #3
On Mar 17, 4:24 pm, Göran Andersson <g...@guffa.comwrote:
Don wrote:
I realize that this may sound like a troll but it is not intended to
be.
I haven't been reading this group but I've seen a number of
vociferious postings lately saying that "vb dotnet doesn't work".
Is that a widely held belief or is it just the same complaning that
goes on with all development tools??
Thanks,
Don
Bothell, WA

It's mostly just the ordinary complaints from people who don't really
understand what they are complaining about.

VB.NET does work, and pretty well too. Personally I don't care much for
the VB language, but I must still say that VB.NET is a huge leap forward
from VB 6. VB.NET is a truly object oriented language, which is a big
difference from the hardly more than pathetic support for object
orientation in VB 6.

VB.NET still suffers a bit from the BASIC syntax, and also some
sacrifices has been made to keep the syntax more like VB 6, but nothing
so serious as to say that it doesn't work.

--
Göran Andersson
_____http://www.guffa.com
It's probably worth noting that a key difference between VB6 and
VB.NET is this:

VB6 is object-BASED. It supports objects, but is not truly object-
oriented.

VB.NET is a full-fledged object-oriented language, supporting all of
the standard OOP principles, though many of the commonly accepted
terms have different names (Shared in lieu of static, for instance).

Further, all VB.NET code compiles down to IL, just as C# code does. It
also references the full body of the .NET Framework, just as C# does.
So, as others have pointed out, the difference between VB.NET and
other .NET languages is simply a matter of syntax and user preference.

(Having said that, there are also minor differences in how efficient
the IL is that is generated for certain keywords and operators, but
those differences are minor in the extreme, and rarely become the
deciding factor in language selection.)

Mike

Mar 17 '07 #4

"Göran Andersson" <gu***@guffa.comwrote in message
news:uq**************@TK2MSFTNGP05.phx.gbl...
Don wrote:
>I realize that this may sound like a troll but it is not intended to
be.

I haven't been reading this group but I've seen a number of
vociferious postings lately saying that "vb dotnet doesn't work".

Is that a widely held belief or is it just the same complaning that
goes on with all development tools??

Thanks,

Don
Bothell, WA

It's mostly just the ordinary complaints from people who don't really
understand what they are complaining about.

VB.NET does work, and pretty well too. Personally I don't care much for
the VB language, but I must still say that VB.NET is a huge leap forward
from VB 6. VB.NET is a truly object oriented language, which is a big
difference from the hardly more than pathetic support for object
orientation in VB 6.

VB.NET still suffers a bit from the BASIC syntax, and also some
sacrifices has been made to keep the syntax more like VB 6, but nothing
so serious as to say that it doesn't work.

--
Göran Andersson
_____
http://www.guffa.com
Why do you hang out here if you don't like VB?

Just wondering,
Robin S.
Mar 17 '07 #5

"Don" <don81846@NO_CaCa.Earthlink.netwrote in message
news:ig********************************@4ax.com...
>
I realize that this may sound like a troll but it is not intended to
be.

I haven't been reading this group but I've seen a number of
vociferious postings lately saying that "vb dotnet doesn't work".

Is that a widely held belief or is it just the same complaning that
goes on with all development tools??

Thanks,

Don
Bothell, WA
It's not a widely held belief. Any post you see by aaronkempf, susiedba,
dbahooker, larrylinson, or todos menos are all aaronkempf. He often posts
responses to himself, just to get the threads going. He thinks that by
posting abusive language and complaints, he can get Microsoft to revert to
VB6.

Robin S.
Mar 17 '07 #6
Don,

I almost never used VB6 and I have hated Basic.

VBNet is not to compare with any of those. It is a new language, which is
able to use most good things from the latter program languages.

However it skipped the legacy problems from C and VB style languages.

Samples

You are able to declare inside a very deep scope without assigning
Your code is checked in a very deep way while typing.

Both I miss very much in C#

Just my opinion.

Cor
Mar 17 '07 #7
Göran Andersson speaks the truth. :-)
You have my vote.

"Göran Andersson" <gu***@guffa.comwrote..
It's mostly just the ordinary complaints from people who don't really
understand what they are complaining about.

VB.NET does work, and pretty well too. Personally I don't care much for
the VB language, but I must still say that VB.NET is a huge leap forward
from VB 6. VB.NET is a truly object oriented language, which is a big
difference from the hardly more than pathetic support for object
orientation in VB 6.

VB.NET still suffers a bit from the BASIC syntax, and also some sacrifices
has been made to keep the syntax more like VB 6, but nothing so serious as
to say that it doesn't work.

--
Göran Andersson
_____
http://www.guffa.com

Mar 17 '07 #8
"RobinS" <Ro****@NoSpam.yah.nonewrote..
Why do you hang out here if you don't like VB?
Hi Robin: I realize your question was directed to Göran but I thought I'd
take a stab at it since you seem like a reasonable person. Notwithstanding
your attempts in microsoft.public.dotnet.general to get people to stop
posting questions about why their modem won't dial and such :-)

Let me start with an example. Somebody asks "what do you think of Los
Angeles" and someone replies "the smog is pretty bad". The reply to that
guy shouldn't be "if you hate it so much why do you live in the United
States?" Why? Because LA is in fact smoggy. There are valid reasons for
living there anyway but that doesn't change the fact that it has a smog
problem.

VB syntax is quirky in a number of ways due to it's roots. They may not
seem quirky to a person who has only developed in VB but they are if you
step back and compare it to other languages in an unbiased manner. That
isn't easy, people have preferences and they tend to be passionate about
them. So (again as an example) no matter how stupid the design of .MEM
files was in dBASE II and dBASE III, people who used them called everybody
who pointed that out "a mindless idiot." Is the Python language's indent
sensitivity a good thing or a bad thing?

You've no doubt read a few of the threads here where the topic is LEN() or
UCASE(). If a person (let's say me) suggests the syntax is dated (and goes
out on a limb and suggests it was only retained to placate the VB6 folk)
that doesn't translate into "VB.Net is stupid". It could even be
interpreted as "you'd get more respect (if C# is considered as a language
that gets more respect) if the things that made it seem like a "toy
language" (those aren't my words) were eliminated."

Everything in life doesn't have to come down to a language war. One can
like Java fundamentally yet program in VB.Net for economic reasons and
should be able to point out "that's odd" without being asked to leave a
public newsgroup. The alternative to rational discussion is embodied in
"the cult of VB6 developer" where everybody must chant the same thing or be
branded a heretic. People have attempted to pull that nonsense here but I
believe the days of yelling "he's a witch" and having that work have
(thankfully) passed.

If I talk to a SmallTalk developer (and I have) and they proclaim there is
no better language on the face of the planet I tend to doubt them. Perhaps
there isn't for the type of software they write but by definition this can't
be the universal case. If there was no language betterin every case there
would be no other languages.

Tom
Mar 17 '07 #9
RobinS wrote:
>
Why do you hang out here if you don't like VB?

Just wondering,
Robin S.
Just because I prefer C# myself, doesn't mean that I think less off
people only based on what language they use.

Most questions are about programming in general and methods in the
framework anyway, and that is the same regardless of the language used.

--
Göran Andersson
_____
http://www.guffa.com
Mar 18 '07 #10
Cor Ligthert [MVP] wrote:
You are able to declare inside a very deep scope without assigning
Your code is checked in a very deep way while typing.

Both I miss very much in C#

Just my opinion.

Cor
I don't see how VB.NET is any different from C# in either of those aspects.

--
Göran Andersson
_____
http://www.guffa.com
Mar 18 '07 #11
"Göran Andersson" <gu***@guffa.comschrieb:
Cor Ligthert [MVP] wrote:
>You are able to declare inside a very deep scope without assigning
Your code is checked in a very deep way while typing.

Both I miss very much in C#

I don't see how VB.NET is any different from C# in either of those
aspects.
I assume Cor refers to VB's background compilation with the latter point, a
feature that is not present in C# currently.

--
M S Herfried K. Wagner
M V P <URL:http://dotnet.mvps.org/>
V B <URL:http://classicvb.org/petition/>

Mar 18 '07 #12
Herfried K. Wagner [MVP] wrote:
"Göran Andersson" <gu***@guffa.comschrieb:
>Cor Ligthert [MVP] wrote:
>>You are able to declare inside a very deep scope without assigning
Your code is checked in a very deep way while typing.

Both I miss very much in C#

I don't see how VB.NET is any different from C# in either of those
aspects.

I assume Cor refers to VB's background compilation with the latter
point, a feature that is not present in C# currently.
But it is.

--
Göran Andersson
_____
http://www.guffa.com
Mar 18 '07 #13
"Göran Andersson" <gu***@guffa.comschrieb:
>>>You are able to declare inside a very deep scope without assigning
Your code is checked in a very deep way while typing.

Both I miss very much in C#

I don't see how VB.NET is any different from C# in either of those
aspects.

I assume Cor refers to VB's background compilation with the latter point,
a feature that is not present in C# currently.

But it is.
What? Background compilation and error detection on the fly as you type?

--
M S Herfried K. Wagner
M V P <URL:http://dotnet.mvps.org/>
V B <URL:http://classicvb.org/petition/>

Mar 18 '07 #14
Goran

beside what Herfried wrote

A a very simple one, however is in my idea good maintanable
\\\
Dim x As Integer
While x < 10
x += 1
End While
///

\\\
int x;
while (x < 10)
{
x += 1;
}
///
As sample does not go,while it is very handy.

(Or maybe is there a setting I don't know)

Cor
Mar 18 '07 #15
But it is.

No, it's not. In VB.NET, as soon as you move your cursor off the current
line, the dynamic compilation feature of the language/VS.NET will check the
code on that line for syntax and compile errors and you will get the
infamous "blue wavy underline" right away.

In C#, you must build your code to get the same syntax checking. C# is not
dynamically compiled like VB.NET is.

It's too bad, because it's really the main reason I haven't move to more
development in C# yet.
Mar 18 '07 #16
Wow!!

"Tom Leylan" <tl*****@nospam.netwrote in message
news:uG*************@TK2MSFTNGP04.phx.gbl...
"RobinS" <Ro****@NoSpam.yah.nonewrote..
>Why do you hang out here if you don't like VB?

Hi Robin: I realize your question was directed to Göran but I thought I'd
take a stab at it since you seem like a reasonable person.
Notwithstanding your attempts in microsoft.public.dotnet.general to get
people to stop posting questions about why their modem won't dial and such
:-)

Let me start with an example. Somebody asks "what do you think of Los
Angeles" and someone replies "the smog is pretty bad". The reply to that
guy shouldn't be "if you hate it so much why do you live in the United
States?" Why? Because LA is in fact smoggy. There are valid reasons for
living there anyway but that doesn't change the fact that it has a smog
problem.

VB syntax is quirky in a number of ways due to it's roots. They may not
seem quirky to a person who has only developed in VB but they are if you
step back and compare it to other languages in an unbiased manner. That
isn't easy, people have preferences and they tend to be passionate about
them. So (again as an example) no matter how stupid the design of .MEM
files was in dBASE II and dBASE III, people who used them called everybody
who pointed that out "a mindless idiot." Is the Python language's indent
sensitivity a good thing or a bad thing?

You've no doubt read a few of the threads here where the topic is LEN() or
UCASE(). If a person (let's say me) suggests the syntax is dated (and
goes out on a limb and suggests it was only retained to placate the VB6
folk) that doesn't translate into "VB.Net is stupid". It could even be
interpreted as "you'd get more respect (if C# is considered as a language
that gets more respect) if the things that made it seem like a "toy
language" (those aren't my words) were eliminated."

Everything in life doesn't have to come down to a language war. One can
like Java fundamentally yet program in VB.Net for economic reasons and
should be able to point out "that's odd" without being asked to leave a
public newsgroup. The alternative to rational discussion is embodied in
"the cult of VB6 developer" where everybody must chant the same thing or
be branded a heretic. People have attempted to pull that nonsense here
but I believe the days of yelling "he's a witch" and having that work have
(thankfully) passed.

If I talk to a SmallTalk developer (and I have) and they proclaim there is
no better language on the face of the planet I tend to doubt them.
Perhaps there isn't for the type of software they write but by definition
this can't be the universal case. If there was no language betterin every
case there would be no other languages.

Tom
Mar 18 '07 #17
On Mar 17, 9:35 pm, "Cor Ligthert [MVP]" <notmyfirstn...@planet.nl>
wrote:
Goran

beside what Herfried wrote

A a very simple one, however is in my idea good maintanable
\\\
Dim x As Integer
While x < 10
x += 1
End While
///

\\\
int x;
while (x < 10)
{
x += 1;}

///
As sample does not go,while it is very handy.

(Or maybe is there a setting I don't know)

Cor
Your C# code would not compile. You would get a use of uninitialized
local variable error :) In C#, it is required that you initialize a
local variable before it's first use (C# only guarentees default
initialization for class level variables). The above would be best
expressed in C#:

int x = 0;
while (x < 10)
{
x++;
}

of course, you could do away with the {} in this case, and even do it
on one line:

while (x < 10) x++;

--
Tom Shelton
Mar 18 '07 #18
Tom,

It does not compare, I checked it although I know it would not, but as you
know you never use it in C#.

My point is that I like the way it is done in VB.Net and in my eyes. VB.Net
is the start of a new generation of programming languages. While C# is the
end of the C generartion. As forever people need time to get use to it, but
I have the believe that it will be like that as soon as the shorter develop
time becomes also vissible at management level. (And again I don't see it as
a successor from VB6, it adopted only some good things from that although it
took much more from C++)

The code I made for C# which is exactly the same in VB.Net, will not compile
in C#, while I don't understand why and can only see legancy
impossibilities.

We will probably see a lot of message which will show that the C# method is
better, but the same kind of message I have already read a while ago about
the puchcard which was better than the hard disk because it was by instance
better transportable.

:-)

Cor

"Tom Shelton" <to*********@comcast.netschreef in bericht
news:11**********************@b75g2000hsg.googlegr oups.com...
On Mar 17, 9:35 pm, "Cor Ligthert [MVP]" <notmyfirstn...@planet.nl>
wrote:
>Goran

beside what Herfried wrote

A a very simple one, however is in my idea good maintanable
\\\
Dim x As Integer
While x < 10
x += 1
End While
///

\\\
int x;
while (x < 10)
{
x += 1;}

///
As sample does not go,while it is very handy.

(Or maybe is there a setting I don't know)

Cor

Your C# code would not compile. You would get a use of uninitialized
local variable error :) In C#, it is required that you initialize a
local variable before it's first use (C# only guarentees default
initialization for class level variables). The above would be best
expressed in C#:

int x = 0;
while (x < 10)
{
x++;
}

of course, you could do away with the {} in this case, and even do it
on one line:

while (x < 10) x++;

--
Tom Shelton


Mar 18 '07 #19
compare has to be compile

Tom,

It does not compare, I checked it although I know it would not, but as you
know you never use it in C#.

My point is that I like the way it is done in VB.Net and in my eyes.
VB.Net is the start of a new generation of programming languages. While C#
is the end of the C generartion. As forever people need time to get use to
it, but I have the believe that it will be like that as soon as the
shorter develop time becomes also vissible at management level. (And again
I don't see it as a successor from VB6, it adopted only some good things
from that although it took much more from C++)

The code I made for C# which is exactly the same in VB.Net, will not
compile in C#, while I don't understand why and can only see legancy
impossibilities.

We will probably see a lot of message which will show that the C# method
is better, but the same kind of message I have already read a while ago
about the puchcard which was better than the hard disk because it was by
instance better transportable.

:-)

Cor

"Tom Shelton" <to*********@comcast.netschreef in bericht
news:11**********************@b75g2000hsg.googlegr oups.com...
>On Mar 17, 9:35 pm, "Cor Ligthert [MVP]" <notmyfirstn...@planet.nl>
wrote:
>>Goran

beside what Herfried wrote

A a very simple one, however is in my idea good maintanable
\\\
Dim x As Integer
While x < 10
x += 1
End While
///

\\\
int x;
while (x < 10)
{
x += 1;}

///
As sample does not go,while it is very handy.

(Or maybe is there a setting I don't know)

Cor

Your C# code would not compile. You would get a use of uninitialized
local variable error :) In C#, it is required that you initialize a
local variable before it's first use (C# only guarentees default
initialization for class level variables). The above would be best
expressed in C#:

int x = 0;
while (x < 10)
{
x++;
}

of course, you could do away with the {} in this case, and even do it
on one line:

while (x < 10) x++;

--
Tom Shelton



Mar 18 '07 #20
"Cor Ligthert [MVP]" <no************@planet.nlschrieb:
It does not compare, I checked it although I know it would not, but as you
know you never use it in C#.

My point is that I like the way it is done in VB.Net and in my eyes.
VB.Net is the start of a new generation of programming languages. While C#
is the end of the C generartion. As forever people need time to get use to
it, but I have the believe that it will be like that as soon as the
shorter develop time becomes also vissible at management level. (And again
I don't see it as a successor from VB6, it adopted only some good things
from that although it took much more from C++)

The code I made for C# which is exactly the same in VB.Net, will not
compile in C#, while I don't understand why and can only see legancy
impossibilities.
What exactly won't compile? As Tom said, C# doesn't (IMO unfortunately)
automatically initialize variables of value types.

--
M S Herfried K. Wagner
M V P <URL:http://dotnet.mvps.org/>
V B <URL:http://classicvb.org/petition/>

Mar 18 '07 #21
Herfried,

I would be glad if it would compile in C#, I am not doing only VB.Net you
know.

Cor

"Herfried K. Wagner [MVP]" <hi***************@gmx.atschreef in bericht
news:e%****************@TK2MSFTNGP06.phx.gbl...
"Cor Ligthert [MVP]" <no************@planet.nlschrieb:
>It does not compare, I checked it although I know it would not, but as
you know you never use it in C#.

My point is that I like the way it is done in VB.Net and in my eyes.
VB.Net is the start of a new generation of programming languages. While
C# is the end of the C generartion. As forever people need time to get
use to it, but I have the believe that it will be like that as soon as
the shorter develop time becomes also vissible at management level. (And
again I don't see it as a successor from VB6, it adopted only some good
things from that although it took much more from C++)

The code I made for C# which is exactly the same in VB.Net, will not
compile in C#, while I don't understand why and can only see legancy
impossibilities.

What exactly won't compile? As Tom said, C# doesn't (IMO unfortunately)
automatically initialize variables of value types.

--
M S Herfried K. Wagner
M V P <URL:http://dotnet.mvps.org/>
V B <URL:http://classicvb.org/petition/>

Mar 18 '07 #22
Herfried K. Wagner [MVP] wrote:
"Göran Andersson" <gu***@guffa.comschrieb:
>>>>You are able to declare inside a very deep scope without assigning
Your code is checked in a very deep way while typing.
>
Both I miss very much in C#

I don't see how VB.NET is any different from C# in either of those
aspects.

I assume Cor refers to VB's background compilation with the latter
point, a feature that is not present in C# currently.

But it is.

What? Background compilation and error detection on the fly as you type?
Yes.

--
Göran Andersson
_____
http://www.guffa.com
Mar 18 '07 #23
Scott M. wrote:
>But it is.

No, it's not. In VB.NET, as soon as you move your cursor off the current
line, the dynamic compilation feature of the language/VS.NET will check the
code on that line for syntax and compile errors and you will get the
infamous "blue wavy underline" right away.
Yes. That's how it works in C# too. Only as it's not line based, it will
also do the check if you pause for a second while typing a line.
In C#, you must build your code to get the same syntax checking. C# is not
dynamically compiled like VB.NET is.
In Visual Stuido 2005 it is.
It's too bad, because it's really the main reason I haven't move to more
development in C# yet.
I see a move coming up... :)

--
Göran Andersson
_____
http://www.guffa.com
Mar 18 '07 #24
"Göran Andersson" <gu***@guffa.comschrieb:
>>>>>You are able to declare inside a very deep scope without assigning
>Your code is checked in a very deep way while typing.
>>
>Both I miss very much in C#
>
I don't see how VB.NET is any different from C# in either of those
aspects.

I assume Cor refers to VB's background compilation with the latter
point, a feature that is not present in C# currently.

But it is.

What? Background compilation and error detection on the fly as you type?

Yes.
Yep, but that's not supported in the completeness it's supported in VB. For
C#, only a simple syntax check is performed, but VB's background compiler
detects far more errors.

--
M S Herfried K. Wagner
M V P <URL:http://dotnet.mvps.org/>
V B <URL:http://classicvb.org/petition/>

Mar 18 '07 #25
Cor,

"Cor Ligthert [MVP]" <no************@planet.nlschrieb:
I would be glad if it would compile in C#, I am not doing only VB.Net you
know.
You cannot expect C# to behave the way VB does and vice-versa. If this was
the case, we would only need a single .NET programming language.

--
M S Herfried K. Wagner
M V P <URL:http://dotnet.mvps.org/>
V B <URL:http://classicvb.org/petition/>

Mar 18 '07 #26
Addendum:

Sample:

\\\
string s;
s = s.ToUpper();
///

For C#, the warning will only be shown after compiling the project, whereas
VB's background compiler would detect immediately.

--
M S Herfried K. Wagner
M V P <URL:http://dotnet.mvps.org/>
V B <URL:http://classicvb.org/petition/>

Mar 18 '07 #27
Cor Ligthert [MVP] wrote:
Goran

beside what Herfried wrote

A a very simple one, however is in my idea good maintanable
\\\
Dim x As Integer
While x < 10
x += 1
End While
///

\\\
int x;
while (x < 10)
{
x += 1;
}
///
As sample does not go,while it is very handy.

(Or maybe is there a setting I don't know)

Cor

Oh, I see.

What you are talking about is implicit initialisation of local
variables. I wouldn't use that in a deep scope anyway, as the variable
is only initialised when the method starts, not at the line where you
declare it.

Example:

Dim s As String
s = String.Empty

Dim i As Integer
For i = 1 To 10
Dim x As Integer
x += 1
s += x.ToString + ","
Next

This will not produce the string "1,1,1,1,1,1,1,1,1,1," but the string
"1,2,3,4,5,6,7,8,9,10,", as the value of x is retained outside of it's
scope. The variable is created and initialised when the method starts,
and the placement of the Dim statement only decides it's scope.

In C# the variable can not be initialised outside of it's scope, so you
can't have a situation where you use a variable that retains it's value
outside the scope.

--
Göran Andersson
_____
http://www.guffa.com
Mar 18 '07 #28
It was my attempt to turn a potential language war thread into something
more along the lines of a discussion. I was hoping people would understand
that the language they use isn't the only one and their particular needs not
the needs of everybody.

When somebody writes that something is "easier" (say the UCASE() function)
one should consider that it is easier to them and perhaps easier to the
other people in their club but not easier to everybody. Following a
language-agnostic methodology is probably "easier" if one switches between
languages regularly.

It was my hope I could jump in before somebody claimed that VB.Net is new
and that C# is the end of a generation or suggested that people preferred
punch cards to disk drives because they are more portable (which of course
they aren't unless 2 GB of punch cards can fit on the end of a keychain) but
alas that has already been posted.

If I were to guess I'd say VB.Net is making inroads into the corporation
precisely because it isn't VB6.
"Tony K" <ki********@NOSPAMcomcast.netwrote...
Wow!!

"Tom Leylan" <tl*****@nospam.netwrote in message
news:uG*************@TK2MSFTNGP04.phx.gbl...
>"RobinS" <Ro****@NoSpam.yah.nonewrote..
>>Why do you hang out here if you don't like VB?

Hi Robin: I realize your question was directed to Göran but I thought
I'd take a stab at it since you seem like a reasonable person.
Notwithstanding your attempts in microsoft.public.dotnet.general to get
people to stop posting questions about why their modem won't dial and
such :-)
<snip>

Mar 18 '07 #29
Sounds like you have a case of diarrhea of the fingers to me. Seriously,
all that for an innocuous 11 word reply? And, then again for a one word
reply?
"Tom Leylan" <tl*****@nospam.netwrote in message
news:u5**************@TK2MSFTNGP02.phx.gbl...
It was my attempt to turn a potential language war thread into something
more along the lines of a discussion. I was hoping people would
understand that the language they use isn't the only one and their
particular needs not the needs of everybody.

When somebody writes that something is "easier" (say the UCASE() function)
one should consider that it is easier to them and perhaps easier to the
other people in their club but not easier to everybody. Following a
language-agnostic methodology is probably "easier" if one switches between
languages regularly.

It was my hope I could jump in before somebody claimed that VB.Net is new
and that C# is the end of a generation or suggested that people preferred
punch cards to disk drives because they are more portable (which of course
they aren't unless 2 GB of punch cards can fit on the end of a keychain)
but alas that has already been posted.

If I were to guess I'd say VB.Net is making inroads into the corporation
precisely because it isn't VB6.
"Tony K" <ki********@NOSPAMcomcast.netwrote...
>Wow!!

"Tom Leylan" <tl*****@nospam.netwrote in message
news:uG*************@TK2MSFTNGP04.phx.gbl...
>>"RobinS" <Ro****@NoSpam.yah.nonewrote..
Why do you hang out here if you don't like VB?

Hi Robin: I realize your question was directed to Göran but I thought
I'd take a stab at it since you seem like a reasonable person.
Notwithstanding your attempts in microsoft.public.dotnet.general to get
people to stop posting questions about why their modem won't dial and
such :-)
<snip>

Mar 18 '07 #30
Yes. That's how it works in C# too. Only as it's not line based, it will
also do the check if you pause for a second while typing a line.
No, Göran it's not. Not nearly to the extent that it is in VB .NET.
In Visual Stuido 2005 it is.
Could be, I haven't played with 2005 (C#) too much yet. But in VS.NET 2003
it is most certainly not.
Mar 18 '07 #31

"Scott M." <s-***@nospam.nospamwrote in message
news:uj**************@TK2MSFTNGP02.phx.gbl...
>Yes. That's how it works in C# too. Only as it's not line based, it will
also do the check if you pause for a second while typing a line.

No, Göran it's not. Not nearly to the extent that it is in VB .NET.
>In Visual Stuido 2005 it is.

Could be, I haven't played with 2005 (C#) too much yet. But in VS.NET
2003 it is most certainly not.
The same is true for 2005.

Robin S.
Mar 18 '07 #32
Scott M. wrote:
>Yes. That's how it works in C# too. Only as it's not line based, it will
also do the check if you pause for a second while typing a line.

No, Göran it's not. Not nearly to the extent that it is in VB .NET.
You are contradicting yourself. Either it is, or it is not. If it is
not, the extent of it can not be compared to something that is, which
you just did.

--
Göran Andersson
_____
http://www.guffa.com
Mar 18 '07 #33
Tom Leylan wrote:
<snip>
Let me start with an example. Somebody asks "what do you think of Los
Angeles" and someone replies "the smog is pretty bad". The reply to that
guy shouldn't be "if you hate it so much why do you live in the United
States?" Why? Because LA is in fact smoggy. There are valid reasons for
living there anyway but that doesn't change the fact that it has a smog
problem.
That wasn't an accurate comparison, I guess. If I understood the posts
correctly, it was like someone saying: "Is L.A. a bad city?". And then
Göran responding "I don't care much about L.A. I must say, though,
that it's a huge leap from the city it was some decades ago".

Which makes it really natural to ask "why do you live here, them?".
And it's something that only Göran can answer, I guess... "Because I
have to"; "Because I'd like to see things from a different
perscpective"; "Because I can endure anything"; "Because there are
things here that I don't find anywhere else"; "Because I'm trying to
convince people to leave this city and come to Seatle with me"; Who
knows? I'm one who'd like to know why Göran, which seems to dislike VB
(.Net) hangs in here. Just that.

<snip>
Everything in life doesn't have to come down to a language war. One can
like Java fundamentally yet program in VB.Net for economic reasons and
should be able to point out "that's odd" without being asked to leave a
public newsgroup.
Again, I don't think that was the case. I didn't see anyone (except,
maybe, Aaron Kempf) being asked to leave this ng.
The alternative to rational discussion is embodied in
"the cult of VB6 developer" where everybody must chant the same thing or be
branded a heretic. People have attempted to pull that nonsense here but I
believe the days of yelling "he's a witch" and having that work have
(thankfully) passed.
I feel sorry you see things this way. I don't think there's anyone
posting regularly here with the attitude of "chant the same thing or
you'll be branded herectic" (well, actually I must confess that
sometimes I see *you* doing that). Specifically, I never saw the "cult
of the VB6 developer" here (you may find it alive an kicking in the
appropriate VB "classic" newsgroup, not here). Nor I saw anyone trying
to "pull that nonsense" here, unless... Oh, I got it! You're talking
about Aaron Kompf! Ok, I agree with you...

Regards,

Branco.

Mar 18 '07 #34
Goran,

Part from your message
In C# the variable can not be initialised outside of it's scope, so you
can't have a situation where you use a variable that retains it's value
outside the scope.
already answered by me about 6 hours before you in my answer to Tom Shelton
We will probably see a lot of message which will show that the C# method
is better, but the same kind of message I have already read a while ago
about the punchcard which was better than the hard disk because it was by
instance better transportable.
Cor
"Göran Andersson" <gu***@guffa.comschreef in bericht
news:%2******************@TK2MSFTNGP02.phx.gbl...
Cor Ligthert [MVP] wrote:
>Goran

beside what Herfried wrote

A a very simple one, however is in my idea good maintanable
\\\
Dim x As Integer
While x < 10
x += 1
End While
///

\\\
int x;
while (x < 10)
{
x += 1;
}
///
As sample does not go,while it is very handy.

(Or maybe is there a setting I don't know)

Cor


Oh, I see.

What you are talking about is implicit initialisation of local variables.
I wouldn't use that in a deep scope anyway, as the variable is only
initialised when the method starts, not at the line where you declare it.

Example:

Dim s As String
s = String.Empty

Dim i As Integer
For i = 1 To 10
Dim x As Integer
x += 1
s += x.ToString + ","
Next

This will not produce the string "1,1,1,1,1,1,1,1,1,1," but the string
"1,2,3,4,5,6,7,8,9,10,", as the value of x is retained outside of it's
scope. The variable is created and initialised when the method starts, and
the placement of the Dim statement only decides it's scope.

In C# the variable can not be initialised outside of it's scope, so you
can't have a situation where you use a variable that retains it's value
outside the scope.

--
Göran Andersson
_____
http://www.guffa.com

Mar 18 '07 #35
Goran,

You surely should try VB.Net once.

There is some checking in C#, however for somebody who knows what VB.Net
does, it is really nothing.

As you have seen am I a not always a correct typer (but very quick), I
assume that I build a C# program at least 5 times more than a VB.Net
program.

Cor

"Göran Andersson" <gu***@guffa.comschreef in bericht
news:uw**************@TK2MSFTNGP06.phx.gbl...
Scott M. wrote:
>>Yes. That's how it works in C# too. Only as it's not line based, it will
also do the check if you pause for a second while typing a line.

No, Göran it's not. Not nearly to the extent that it is in VB .NET.

You are contradicting yourself. Either it is, or it is not. If it is not,
the extent of it can not be compared to something that is, which you just
did.

--
Göran Andersson
_____
http://www.guffa.com

Mar 18 '07 #36
Göran Andersson wrote:
<snip>
Dim s As String
s = String.Empty

Dim i As Integer
For i = 1 To 10
Dim x As Integer
x += 1
s += x.ToString + ","
Next

This will not produce the string "1,1,1,1,1,1,1,1,1,1," but the string
"1,2,3,4,5,6,7,8,9,10,", as the value of x is retained outside of it's
scope. The variable is created and initialised when the method starts,
and the placement of the Dim statement only decides it's scope.
It's not true that x keeps its value outside it's scope. The scope is
the loop, therefore it lives *inside* the scope.

To all practical effects, in VB a variable gets its default value
(i.e., nothing, 0, false, etc) just upon declaration. The declaration
itself isn't considered an executable statement. Therefore, if the
variable is declared inside a loop, it will keep whatever value it was
last assigned between cicles (that is, the declaration itself won't be
"executed" between cicles).

On the other hand, any initialization you supply in the declaration
*is an executable statement*, and thus will be executed between loop
cicles. Thus, if you want a variable to be *reinitialized* at each
cicle, you must explicitly say so:

Dim S As String
For I As Integer = 1 To 10
Dim X As Integer = 0
X += 1
S &= X.ToString & ","
Next

This may seem odd to people that come from a language that doesn't
initialize the memory where the variables live in, but it becomes
quite natural when you understand it.

Sure, this can lead to less "pure" (whatever this means) uses:

Dim S As String
For I As Integer = 1 To 10
Dim X As Integer = X + 1
S &= X.ToString & ","
Next

But as mom used to say, you'll only know a language when you start to
figure out the slang...

HTH.

Regards,

Branco.

Mar 18 '07 #37
"Branco Medeiros" <br*************@gmail.comwrote...
I don't think there's anyone
posting regularly here with the attitude of "chant the same thing or
you'll be branded herectic" (well, actually I must confess that
sometimes I see *you* doing that).
I appreciate the thoughtful response but I find it unlikely that you've ever
seen me post anything like that.

Mar 18 '07 #38
Cor Ligthert [MVP] wrote:
Goran,

You surely should try VB.Net once.
I regularly write small pieces of code in VB.NET to try them out. Not
enough to notice any difference in the background compilation, though.
There is some checking in C#, however for somebody who knows what VB.Net
does, it is really nothing.

As you have seen am I a not always a correct typer (but very quick), I
assume that I build a C# program at least 5 times more than a VB.Net
program.
I do mostly web development. I don't even have to build it to run it.
Cor

"Göran Andersson" <gu***@guffa.comschreef in bericht
news:uw**************@TK2MSFTNGP06.phx.gbl...
>Scott M. wrote:
>>>Yes. That's how it works in C# too. Only as it's not line based, it will
also do the check if you pause for a second while typing a line.
No, Göran it's not. Not nearly to the extent that it is in VB .NET.
You are contradicting yourself. Either it is, or it is not. If it is not,
the extent of it can not be compared to something that is, which you just
did.

--
Göran Andersson
_____
http://www.guffa.com


--
Göran Andersson
_____
http://www.guffa.com
Mar 18 '07 #39
Why do you keep coming with those irrelevant analogies? What does this
have to do with punch cards?

Besides, it was you who said that you missed this feature in C#, and I
am explaining to you why it's not implemented that way.

Cor Ligthert [MVP] wrote:
Goran,

Part from your message
>In C# the variable can not be initialised outside of it's scope, so you
can't have a situation where you use a variable that retains it's value
outside the scope.

already answered by me about 6 hours before you in my answer to Tom Shelton
>We will probably see a lot of message which will show that the C# method
is better, but the same kind of message I have already read a while ago
about the punchcard which was better than the hard disk because it was by
instance better transportable.

Cor
"Göran Andersson" <gu***@guffa.comschreef in bericht
news:%2******************@TK2MSFTNGP02.phx.gbl...
>Cor Ligthert [MVP] wrote:
>>Goran

beside what Herfried wrote

A a very simple one, however is in my idea good maintanable
\\\
Dim x As Integer
While x < 10
x += 1
End While
///

\\\
int x;
while (x < 10)
{
x += 1;
}
///
As sample does not go,while it is very handy.

(Or maybe is there a setting I don't know)

Cor

Oh, I see.

What you are talking about is implicit initialisation of local variables.
I wouldn't use that in a deep scope anyway, as the variable is only
initialised when the method starts, not at the line where you declare it.

Example:

Dim s As String
s = String.Empty

Dim i As Integer
For i = 1 To 10
Dim x As Integer
x += 1
s += x.ToString + ","
Next

This will not produce the string "1,1,1,1,1,1,1,1,1,1," but the string
"1,2,3,4,5,6,7,8,9,10,", as the value of x is retained outside of it's
scope. The variable is created and initialised when the method starts, and
the placement of the Dim statement only decides it's scope.

In C# the variable can not be initialised outside of it's scope, so you
can't have a situation where you use a variable that retains it's value
outside the scope.

--
Göran Andersson
_____
http://www.guffa.com


--
Göran Andersson
_____
http://www.guffa.com
Mar 18 '07 #40
Branco Medeiros wrote:
Which makes it really natural to ask "why do you live here, them?".
And it's something that only Göran can answer, I guess... "Because I
have to"; "Because I'd like to see things from a different
perscpective"; "Because I can endure anything"; "Because there are
things here that I don't find anywhere else"; "Because I'm trying to
convince people to leave this city and come to Seatle with me"; Who
knows? I'm one who'd like to know why Göran, which seems to dislike VB
(.Net) hangs in here. Just that.
I don't live here. I just come to visit for the people. :)

--
Göran Andersson
_____
http://www.guffa.com
Mar 18 '07 #41
Branco Medeiros wrote:
Göran Andersson wrote:
<snip>
>Dim s As String
s = String.Empty

Dim i As Integer
For i = 1 To 10
Dim x As Integer
x += 1
s += x.ToString + ","
Next

This will not produce the string "1,1,1,1,1,1,1,1,1,1," but the string
"1,2,3,4,5,6,7,8,9,10,", as the value of x is retained outside of it's
scope. The variable is created and initialised when the method starts,
and the placement of the Dim statement only decides it's scope.

It's not true that x keeps its value outside it's scope. The scope is
the loop, therefore it lives *inside* the scope.
Yes, it lives outside the scope. You leave the scope for each iteration
in the loop, but it still keeps it's value.

Try this, if you don't believe me:

Dim s As String
s = String.Empty

Dim j as Integer
For j = 1 to 3
Dim i As Integer
For i = 1 To 3
Dim x As Integer
x += 1
s += x.ToString + ","
Next
Next

If the variable only kept it's value inside the loop, it would be
initialised when you enter the inner loop, which would produce the
string "1,2,3,1,2,3,1,2,3,".

It doesn't. The value of the variable is retained outside the loop, so
the string produced is "1,2,3,4,5,6,7,8,9,".
To all practical effects, in VB a variable gets its default value
(i.e., nothing, 0, false, etc) just upon declaration. The declaration
itself isn't considered an executable statement. Therefore, if the
variable is declared inside a loop, it will keep whatever value it was
last assigned between cicles (that is, the declaration itself won't be
"executed" between cicles).
Declaring a variable does not set it's value, as I just showed. The
value is set when the variable is created, which is at the start of the
method.
On the other hand, any initialization you supply in the declaration
*is an executable statement*, and thus will be executed between loop
cicles. Thus, if you want a variable to be *reinitialized* at each
cicle, you must explicitly say so:

Dim S As String
For I As Integer = 1 To 10
Dim X As Integer = 0
X += 1
S &= X.ToString & ","
Next

This may seem odd to people that come from a language that doesn't
initialize the memory where the variables live in, but it becomes
quite natural when you understand it.
Oh, I understand it. That's why I am trying to explain the risk of
declaring a variable inside a scope and believing that it only lives
indide that scope.
Sure, this can lead to less "pure" (whatever this means) uses:

Dim S As String
For I As Integer = 1 To 10
Dim X As Integer = X + 1
S &= X.ToString & ","
Next
Does that even compile? Yuck!

--
Göran Andersson
_____
http://www.guffa.com
Mar 18 '07 #42
Göran Andersson wrote:
Yes, it lives outside the scope. You leave the scope for each iteration
in the loop, but it still keeps it's value.

Try this, if you don't believe me:

Dim s As String
s = String.Empty

Dim j as Integer
For j = 1 to 3
Dim i As Integer
For i = 1 To 3
Dim x As Integer
x += 1
s += x.ToString + ","
Next
Next
Ouch! The scenario showed in your example is a major trap.

<snip>
To all practical effects, in VB a variable gets its default value
(i.e., nothing, 0, false, etc) just upon declaration.
<snip>

I was not aware of the *impractical* effect shown above. The fact is
that variables get initializaded to default values all at once in the
stack frame (even the ones that will be actually declared later,
inside a block). The code you showed uses a side effect of this. =P

Point taken.

Regards,

Branco.

Mar 19 '07 #43
Then you are judging something of which you have no experience. I have
written a handful of apps in VB, then turned around and rewritten the same
applications in C# for the experience, and I can promise you, the
"auto-compile-as-you-type" function in VB is a *lot* more dynamic and
fully-functional than the one in C#.

Robin S.
-----------------------------------------------
"Göran Andersson" <gu***@guffa.comwrote in message
news:uy**************@TK2MSFTNGP04.phx.gbl...
Cor Ligthert [MVP] wrote:
>Goran,

You surely should try VB.Net once.

I regularly write small pieces of code in VB.NET to try them out. Not
enough to notice any difference in the background compilation, though.
>There is some checking in C#, however for somebody who knows what VB.Net
does, it is really nothing.

As you have seen am I a not always a correct typer (but very quick), I
assume that I build a C# program at least 5 times more than a VB.Net
program.

I do mostly web development. I don't even have to build it to run it.
>Cor

"Göran Andersson" <gu***@guffa.comschreef in bericht
news:uw**************@TK2MSFTNGP06.phx.gbl...
>>Scott M. wrote:
Yes. That's how it works in C# too. Only as it's not line based, it
will also do the check if you pause for a second while typing a line.
No, Göran it's not. Not nearly to the extent that it is in VB .NET.
You are contradicting yourself. Either it is, or it is not. If it is
not, the extent of it can not be compared to something that is, which
you just did.

--
Göran Andersson
_____
http://www.guffa.com



--
Göran Andersson
_____
http://www.guffa.com

Mar 19 '07 #44

"Branco Medeiros" <br*************@gmail.comwrote in message
news:11**********************@p15g2000hsd.googlegr oups.com...
Göran Andersson wrote:
Yes, it lives outside the scope. You leave the scope for each iteration
in the loop, but it still keeps it's value.

Try this, if you don't believe me:

Dim s As String
s = String.Empty

Dim j as Integer
For j = 1 to 3
Dim i As Integer
For i = 1 To 3
Dim x As Integer
x += 1
s += x.ToString + ","
Next
Next
Ouch! The scenario showed in your example is a major trap.

<snip>
To all practical effects, in VB a variable gets its default value
(i.e., nothing, 0, false, etc) just upon declaration.
<snip>

I was not aware of the *impractical* effect shown above. The fact is
that variables get initializaded to default values all at once in the
stack frame (even the ones that will be actually declared later,
inside a block). The code you showed uses a side effect of this. =P

Point taken.

Regards,

Branco.

This is the documented behavior of variables in VB.

Mike Ober.


Mar 19 '07 #45

"Göran Andersson" <gu***@guffa.comwrote in message
news:Ob**************@TK2MSFTNGP06.phx.gbl...
RobinS wrote:
>>
Why do you hang out here if you don't like VB?

Just wondering,
Robin S.

Just because I prefer C# myself, doesn't mean that I think less off
people only based on what language they use.

Most questions are about programming in general and methods in the
framework anyway, and that is the same regardless of the language used.

--
Göran Andersson
_____
http://www.guffa.com
To me, you come across derisive of VB and sure that there is nothing that
can be done as well in VB as it is in C#. You may not *think* that means
you don't think less of VB programmers, but there is an implicit judgment
in there.

I hang out in the C# group, and am not judgmental or derisive about C#. And
yes, I could be if I wanted to, but I think it's disrespectful of other
peoples' choices.

To me, it's like standing in a place of worship and vocally deriding the
religion therein. Judging by how strongly some people feel about their
language of choice, I don't think that's far off the mark. ;-)

As we all know, we can debate the pluses and minuses of VB and C# all day
long and never reach a consensus. I program in both, but I prefer VB
because it is clearer *to* *me*. There are things I prefer about C# as
well.

What is important is that people write effective, impactful, logical,
understandable code in whatever language they choose, and help their
customers do their jobs more effectively and more efficiently or help their
business obtain better results more easily, etc. Someone could write a bad
program in C# just as easily as they could in VB. They can also write a
good program in either language.

Robin S.
Mar 19 '07 #46
If you don't understand what I'm saying, it is clear you haven't used both
languages for more than 5 minutes. There is no contradiction in what I'm
saying if you have experienced both. Instead of being so stubborn, maybe
you could ask yourself why all the other responses to you on this contradict
what you're saying. Maybe there's something to what we're saying that you
haven't experienced yet?

Also, since you indicated that C# 2005 has the full dynamic compilation that
VB .NET has, I took you at your word, but now I see other posts indicating
that it still doesn't have the same level (which is what my understanding
was).

It seems very clear that you just don't know what you are talking about here
Goran.
"Göran Andersson" <gu***@guffa.comwrote in message
news:uw**************@TK2MSFTNGP06.phx.gbl...
Scott M. wrote:
>>Yes. That's how it works in C# too. Only as it's not line based, it will
also do the check if you pause for a second while typing a line.

No, Göran it's not. Not nearly to the extent that it is in VB .NET.

You are contradicting yourself. Either it is, or it is not. If it is not,
the extent of it can not be compared to something that is, which you just
did.

--
Göran Andersson
_____
http://www.guffa.com

Mar 19 '07 #47
"I regularly write small pieces of code in VB.NET to try them out. Not
enough to notice any difference in the background compilation, though."

Well, there you go...Just my point. Why be so stubborn when others, who do
have the experience to make such a comparison tell you you are wrong?


"Göran Andersson" <gu***@guffa.comwrote in message
news:uy**************@TK2MSFTNGP04.phx.gbl...
Cor Ligthert [MVP] wrote:
>Goran,

You surely should try VB.Net once.

I regularly write small pieces of code in VB.NET to try them out. Not
enough to notice any difference in the background compilation, though.
>There is some checking in C#, however for somebody who knows what VB.Net
does, it is really nothing.

As you have seen am I a not always a correct typer (but very quick), I
assume that I build a C# program at least 5 times more than a VB.Net
program.

I do mostly web development. I don't even have to build it to run it.
>Cor

"Göran Andersson" <gu***@guffa.comschreef in bericht
news:uw**************@TK2MSFTNGP06.phx.gbl...
>>Scott M. wrote:
Yes. That's how it works in C# too. Only as it's not line based, it
will also do the check if you pause for a second while typing a line.
No, Göran it's not. Not nearly to the extent that it is in VB .NET.
You are contradicting yourself. Either it is, or it is not. If it is
not, the extent of it can not be compared to something that is, which
you just did.

--
Göran Andersson
_____
http://www.guffa.com



--
Göran Andersson
_____
http://www.guffa.com

Mar 19 '07 #48
Just to concur and to re-inforce something I mentioned earlier...

In VB.NET, you will know what potential compilation errors await you as soon
as you move off the line you just typed. With Option Strict set to On (not
the default), there really isn't too much left to chance when it comes to
the dynamic compilation that VB.NET gives you on the fly.

But, with C#, you really MUST manually build your app. to see what problems
you have. Many complilation issues will not show up at all automatically in
C#.
"RobinS" <Ro****@NoSpam.yah.nonewrote in message
news:Sf******************************@comcast.com. ..
Then you are judging something of which you have no experience. I have
written a handful of apps in VB, then turned around and rewritten the same
applications in C# for the experience, and I can promise you, the
"auto-compile-as-you-type" function in VB is a *lot* more dynamic and
fully-functional than the one in C#.

Robin S.
-----------------------------------------------
"Göran Andersson" <gu***@guffa.comwrote in message
news:uy**************@TK2MSFTNGP04.phx.gbl...
>Cor Ligthert [MVP] wrote:
>>Goran,

You surely should try VB.Net once.

I regularly write small pieces of code in VB.NET to try them out. Not
enough to notice any difference in the background compilation, though.
>>There is some checking in C#, however for somebody who knows what VB.Net
does, it is really nothing.

As you have seen am I a not always a correct typer (but very quick), I
assume that I build a C# program at least 5 times more than a VB.Net
program.

I do mostly web development. I don't even have to build it to run it.
>>Cor

"Göran Andersson" <gu***@guffa.comschreef in bericht
news:uw**************@TK2MSFTNGP06.phx.gbl...
Scott M. wrote:
>Yes. That's how it works in C# too. Only as it's not line based, it
>will also do the check if you pause for a second while typing a line.
No, Göran it's not. Not nearly to the extent that it is in VB .NET.
You are contradicting yourself. Either it is, or it is not. If it is
not, the extent of it can not be compared to something that is, which
you just did.

--
Göran Andersson
_____
http://www.guffa.com



--
Göran Andersson
_____
http://www.guffa.com


Mar 19 '07 #49

"Tom Leylan" <tl*****@nospam.netwrote in message
news:uG*************@TK2MSFTNGP04.phx.gbl...
"RobinS" <Ro****@NoSpam.yah.nonewrote..
>Why do you hang out here if you don't like VB?

Hi Robin: I realize your question was directed to Göran but I thought
I'd take a stab at it since you seem like a reasonable person.
It depends on how you define "reasonable". If you define it as someone who
agrees with you, than I'm probably not as reasonable as you would like.
Notwithstanding your attempts in microsoft.public.dotnet.general to get
people to stop posting questions about why their modem won't dial and
such :-)
I always wonder what people think about me doing that. If people think that
is an inappropriate response, I can certainly stop. It is my compassion for
people who need help that encourages me.

If I knew zippo about computers (as is the case with most of those people),
and posted a question in the only place I could figure out how to post one
(the first "General Discussions" occurrence under the dropdown in the
Microsoft Discussion Group site), and nobody helped me or redirected me to
somewhere I could get help, I would be really frustrated. And unhelped.

But if people think I should stop doing that, I will. I know you stuck a
smiley face on that comment, but you must have some real feeling behind it
to mention it.
LA and Smog
I don't agree with your analogy, if you are comparing VB to LA. You can't
really escape the smog in LA. You can escape poor coding in VB.
VB syntax is quirky in a number of ways due to it's roots. They may not
seem quirky to a person who has only developed in VB but they are if you
step back and compare it to other languages in an unbiased manner. That
isn't easy, people have preferences and they tend to be passionate about
them.
Calling a function of a language "quirky" seems terribly judgmental.
Someone else could deem C# quirky in that it does not require curly braces
if there is only one sentence in an If/EndIf statement.

(Please don't waste your breath arguing about whether that's quirky or not.
I didn't say it was quirky. I said someone else could deem it so.) That's a
matter of opinion. Quirky could also be redefined as "language-specific".
You've no doubt read a few of the threads here where the topic is LEN()
or UCASE(). If a person (let's say me) suggests the syntax is dated (and
goes out on a limb and suggests it was only retained to placate the VB6
folk) that doesn't translate into "VB.Net is stupid". It could even be
interpreted as "you'd get more respect (if C# is considered as a language
that gets more respect) if the things that made it seem like a "toy
language" (those aren't my words) were eliminated."
This comes across as really condescending. Microsoft has a real problem
with all of the VB6 work out there that has not been converted to VB.Net,
even 6 years after its introduction. You can think of it as placating, but
it can also be a business decision to not remove the "shortcuts" that are
imbedded all over the place, in order to make it (infinitesimally) easier
to move applications to .Net.

You could argue that they should have changed the functionality of And and
Or to "AndAlso" and "OrElse" by default. But that would also have had a
huge impact on the conversion of VB6 code.

And before you throw the hammer at me, I will admit that I use the .Net
methods rather than the VB shortcuts. I do this because I program in both
VB and C#, and it is easier for me to switch back and forth.
Everything in life doesn't have to come down to a language war. One can
like Java fundamentally yet program in VB.Net for economic reasons and
should be able to point out "that's odd" without being asked to leave a
public newsgroup. The alternative to rational discussion is embodied in
"the cult of VB6 developer" where everybody must chant the same thing or
be branded a heretic. People have attempted to pull that nonsense here
but I believe the days of yelling "he's a witch" and having that work
have (thankfully) passed.
I don't remember ever feeling like I had to agree with everybody else or I
would be tossed out of the group. I think there are different ways to
disagree or to have a problem with a language. I don't think everybody has
to agree. I guess I try to be mindful of other people's choices, and know
that just because I don't agree with it, it doesn't mean I'm 100% right.

If I talk to a SmallTalk developer (and I have) and they proclaim there
is no better language on the face of the planet I tend to doubt them.
Perhaps there isn't for the type of software they write but by definition
this can't be the universal case. If there was no language betterin
every case there would be no other languages.
Well, there may not be any better language on the face of the planet for
that developer. I can respect that and disagree with them without being
condescending about their choice.

Do you still think I'm reasonable?

Robin S.
Mar 19 '07 #50

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

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.