Is VB Caca??

  • Thread starter Thread starter Don
  • Start date Start date
Tom Leylan said:
And if no other language on Earth does it you still claim that VB.Net is
getting passed over. So again I ask you "why?" Could it be that nobody
really gives a hoot when it comes down to it, that while it's a nice
feature
perhaps it doesn't really impact the bottom-line?

Since I'm sure I'm mistaken with my guess (as always) simply post the
answer, why aren't more companies standardizing on VB.Net?

I don't have any numbers I can trust, that's why I am not able to give an
answer. At least in the US it strongly depends on the area you take a look
at I have been told by people who are working there. All I can tell you
(which I assume you already know) is that the choice of a programming
language is not only based on certain features it (or a certain IDE)
provides.
 
Tom,

Tom Leylan said:
If there is a difference to be noted and again it is sure to be
controversial, it would tend to be due to the type of people who have
traditionally been drawn to the various languages. Lots of kids pick up
on
BASIC because it was a) free, b) an interpreter. Very few just decided to
try C (they would have to get a compiler first) or assembly language as
getting anything more than your name to print was an effort. Of those
that
did try C many routinely brought the computer to a halt by forgetting to
initialize a pointer and they learned very fast where the important parts
of
the O/S are stored. If they weren't turned off by all the hassle they got
better and wrote safer code. That wasn't traditionally the path of the
BASIC developer because the language was very forgiving.

I have seen tons of crappy code written in BASIC, C, VB, C++. Often I am
frightened by C/C++ code which makes it obvious that the developer who wrote
it didn't understand the concept of pointers. Well, this doesn't mean that
the application never works, but it has serious security holes and/or works
"most of the time".
That may no longer be the case but I will guess that you will not find too
many C/C++ developers turning to BASIC while you will find some BASIC
developers turning to C/C++ and C#.

I remember reading comments from former C/C++ developers who switched to C#
praising features of C# which BASIC/VB already had for years (safe
references instead of unsafe pointers, no outdated "include" model, events,
properties, many IDE features only possible because of the style of the
programming language (IntelliSense support, for example), ...). To me it
seems that C# has more similarities with VB6 than with C++, except the exact
keywords.
 
Zim,
Isn't this a public forum? I think he or anyone should be able to speak
about VB.NET and share ideas no matter how many hours they work with it.
So If I say that I work with VB.NET for 23 hours, my comments are not
welcome?
Your comments are forever welcome even if you are a 10 minutes user. But in
my idea you cannot set the rules for others as Goran often tries to do.

You can decide yourself to use something or not, but you should in my idea
not be picturized here in this newsgroup as a fool as you don't do that
accoording to the rules of somebody with very low expirience himself and is
only comparing the language with sometimes legacy ECMA C# rules (thanks
Brian for the hint).

(Somebody who does something foolish is in my eyes no fool, before somebody
write that I often tell that somebody is a fool. I never do that, I don't
call my self a fool but do often something foolish and learn from that.)

Cor
 
Göran Andersson said:
What words? That it should not be used in a deep scope?


What behaviour? Presenting examples that prove exactly what I am talking
about?


As I have seen before, you invent your own "truth" without anything at all
to back it up.

My purpose is to present the possibility that what you regard only as a
feature of VB.NET and a shortcoming of C# is not only that, but that there
might be a reason why it works differently in C#, and that the automagic
things that VB.NET does comes with a risk.

That's your own "truth" too. There are even things VB.NET makes differently
because the automagic used by C# comes with a risk (I already mentioned
wiring of methods in a class with methods defined in an interface the class
implements). I think the best solution is to take a close look at a certain
feature in at least VB.NET /and/ C# and try to list pros and cons for each
implementation. Both C# and VB.NET have their flaws and C# is far away from
being the prototype of a flawless programming language.
 
Herfried K. Wagner said:
I have seen tons of crappy code written in BASIC, C, VB, C++. Often I am
frightened by C/C++ code which makes it obvious that the developer who
wrote it didn't understand the concept of pointers. Well, this doesn't
mean that the application never works, but it has serious security holes
and/or works "most of the time".
I remember reading comments from former C/C++ developers who switched to
C# praising features of C# which BASIC/VB already had for years (safe
references instead of unsafe pointers, no outdated "include" model,
events, properties, many IDE features only possible because of the style
of the programming language (IntelliSense support, for example), ...). To
me it seems that C# has more similarities with VB6 than with C++, except
the exact keywords.

They may have been the same people who wrote the crappy code in both cases.
I've seen crappy code in those 4 languages and at least a dozen others.

I tend toward doing things in odd fashion so I checked (as best I could)
with the developer of the language what his intention was and pretty much
according to Anders Heijlsberg it was not to emulate VB6. There are other
sources but here is one: http://en.wikipedia.org/wiki/C_Sharp. If it
mentions VB6 anywhere I missed it.

The good news however (if that is the case) is the VB.Net developer needn't
concern him/herself with whether C# does anything special since it doesn't
and they could just change the keywords a little and be writing C#. Yet
another reason there needn't have been a language war.

Do you think the Lambda calculus slated for C# Vers. 3.0 is going to be
welcomed by VB.Net developers? Then again perhaps it will be in VB.Net
first cause LISP stole it from VB6 I believe :-)
 
Herfried K. Wagner said:
Array support (especially "overloading" '(...)' with many different
functions), some language inconsistencies and redundancy ('Exit Sub' vs.
'Return'), the lack of definite assignment checking, BC42104, automatic
import of modules without an option to turn it off, the lack of support
for inline comments, unclear/weakened semantics of 'Shared' (especially
since the introduction of a warning regarding access of shared members via
an instance), ...

There is a problem with array support? So what solution would yield the
least resistance from VB developers, in other words what should MS do to
solve it?

I've never used Exit Sub in my life but any time there are two identical
ways to do something I'm in favor of dropping one of them and Return is the
more common syntax so I'd retain that one. Frankly I don't see the
syntactic advantage to Sub at all, they can as easily be declared as
functions that return Nothing.

I have an idea you will tell me why your changes make perfect sense and mine
are going too far. :-)
 
The behavior of variable scoping in VB.Net is a holdover from VB 6. In
addition, the VB 2005 compiler actually warns you when you create what
appears to be a variable in an inner scope.

sub foo()
dim i as integer

for i as integer = 1 to 10
debug.print i
next i
end sub

The compiler will warn you about the definition of "i" in the for statement.
I do agree that this can be confusing at first.

Mike Ober.
 
Lambda Calculus was in Lisp before BASIC was even in existance. The old
Lisp Machines had it.

Mike.
 
Herfried said:
To me it seems that C# has more similarities with VB6 than with C++,
except the exact keywords.

Sure you can find similarities between C# and VB6 if you really want to,
but it's mostly coincidents. You will find a lot more similarities with
Java, Delphi and C++, which C# actually is based on.
 
Cor said:
This is an analogy:

Your contribution in this thread have more and more the same effect what
moving wheels in the country from Herfried often do.

Cor

Could you write that in a sentence that makes any sense at all?
 
Hi Michael... it was an attempt to be funny (it didn't work) :-) I had a
version of Lisp (Allegro CL) on my computer but took it off last year.
After reading a book, several articles and playing with it a bit I decided
that I wasn't likely to put the effort required into learning it.
 
Herfried said:
That's your own "truth" too.

Not at all. I don't claim to know his agenda for writing in the newsgroup.
There are even things VB.NET makes
differently because the automagic used by C# comes with a risk (I
already mentioned wiring of methods in a class with methods defined in
an interface the class implements).

Of course it works both ways. Each feature has it's limitations or
drawbacks, and that works regardless of the language.
I think the best solution is to
take a close look at a certain feature in at least VB.NET /and/ C# and
try to list pros and cons for each implementation.

And that's not exactly what I am trying to do here?
 
Cor said:
But in
my idea you cannot set the rules for others as Goran often tries to do.

Once again you are spreading lies without anything to back them up.

Can't you keep a civil tone in the newsgrop? Are you incapable of
debating without making direct attacks on the people you are debating with?
 
Tom,

The Sub is backwards compatible, although I would find it nicer to have
something as "Methode" instead of both Sub and Function. While this can be
even three for the time being.

Exit Method would than be fine for both, while return can be used for a
really return with a value or reference.

Just my idea,

Cor
 
Goran,

If you can look at it something longer than the time you take now than you
will see that you find more similarities between VB.Net and C++ than between
VB.Net and VB6.

The fine thing is for VB.Net that it is better usable for the so in many
languages called Alpha's.

The latter are people who don't like very much abstract thinking but like it
more to explain things with words.

The same reason for Cobol (for Alpha's) and Algol/Fortran (for Beta's).
Although strange enough Fortran was the direct predecessor from Basic.

Cor
 
Could you write that in a sentence that makes any sense at all?

Sorry can you explain what you mean with that sentence.

(Did you not understand it, than say that).

Cor
 
Goran,
Once again you are spreading lies without anything to back them up.
Can't you keep a civil tone in the newsgrop? Are you incapable of
debating without making direct attacks on the people you are debating
with?

Really funny, you even don't see that what you are writting is direct
reflecting on you.

Cor
 
Cor said:
If you can look at it something longer than the time you take now than you
will see that you find more similarities between VB.Net and C++ than between
VB.Net and VB6.

Of course you are welcome to introduce completely new questions in the
thread, but it's really rude of you to call me short sighted because I
didn't answer your question before you even thought of it yourself.
 
It warns you because you are declaring a variable in the scope that
hides a variable with the same name with a larger scope.

C# has a stricter view on the matter and doesn't allow it at all.
 
Back
Top