> "And" evaluates both sides of the conditional regardless of the first
> conditional actual value. Same is true for "Or". This is for situations
> when the second conditional is a method call and you want the method to run
> regardless of its return value.
>
> "AndAlso" and "OrElse" were added to solve that issue.
I would guess it's historical - because And and Or historically didn't
do short-circuiting, the behaviour wasn't changed for VB.NET. I doubt
that many people really *want* the non-short-circuiting behaviour to be
the more common one...

Signature
Jon Skeet - <skeet@pobox.com>
http://www.pobox.com/~skeet Blog: http://www.msmvps.com/jon.skeet
If replying to the group, please do not mail me too
Greg Young [MVP] - 26 Apr 2006 06:38 GMT
I agree with this completely .. I remember the first time I came accross
this years ago having not come a VB background I found it to be the oddest
thing.
The "interesting" things we bring forward for the sake of "backwards
thought" compatibility :)
>> "And" evaluates both sides of the conditional regardless of the first
>> conditional actual value. Same is true for "Or". This is for situations
[quoted text clipped - 8 lines]
> that many people really *want* the non-short-circuiting behaviour to be
> the more common one...
Scott M. - 27 Apr 2006 23:44 GMT
Actually, MS did change the non-short circuited functionality of "And" and
"Or" to be short-circuited in the first .NET beta.
Too many existing VB 6.0 developers that had already known about the
original behavior complained that switching the operation of "And" and "Or"
for .NET would make VB 6.0 code harder to port to .NET, so MS switched them
back to non-short circuited and introduced "AndAlso" and "OrElse" as a way
to have the short-circuited approach available.
>I agree with this completely .. I remember the first time I came accross
>this years ago having not come a VB background I found it to be the oddest
[quoted text clipped - 16 lines]
>> that many people really *want* the non-short-circuiting behaviour to be
>> the more common one...