[Please note that most of the rantings given here are far out of date; VB is well supported by Microsoft and remains a potent source of new and existing commercial applications. Oh, well.]
{"Potent"? Oh dear...} You're not helping...
SmalltalkIsaFailure is not true but VisualBasicIsaFailure. By explicit intent, VbDotNet is unusable trash. Plenty of VB3-6 legacy out there but the developers have all moved on. VisualBasic's dinner has been eaten by CsharpDotNet, and MicroSoft themselves can't wait for the remaining VB code to wither away.
If it dies it is because MS killed it by dinking with the "standard". VB was "good enough" and its event-driven IDE and coordinate-based GUI system was simple, RAD-able, and straightforward. VB GUIs beat Web interfaces face-down for most tasks. Deployability is why companies are going Web, not the GUI. Most the complaints against VB are from alternative paradigm zealots rather than the practical crowd. Its language annoyances and gotchas are not much of a problem once learned. VB was practical. It got the job done. It was killed by MS's trying to chase after JavaLanguage hype and stealing the worst of Java to do it, such as the bloated, tangled APIs and OOP's path-oriented '60s navigational-left-over verbosity.
I don't understand, because I've never done VisualBasic. I thought that the "standard" you mention was the one created by Microsoft, no? Because I thought that Microsoft VB was sharply different than every non-Microsoft BasicLanguage ever created (and I am mildly familiar with a number of those non-Microsoft Basics).
Perhaps "standard" is the wrong word. What I meant is that they changed the language significantly for no real reason. See:
http://uk.builder.com/programming/visualbasic/0,39030091,39239758,00.htm
And just in general, I didn't know VB died...I don't have an opinion on the topic, but I didn't know that. Why do you say it died, and if it did, why do you say that the above was the cause?
Doubtless I don't understand because I'm an outsider, but hey, here's your chance to explain to us outsiders.
VB6 was killed quite intentionally by Microsoft. They have stopped working on it in favor of their DotNet technologies (which came out around 2002). The VbDotNet language bears little resemblance to the VisualBasic 6 language.
VB6 was "good enough" for many tasks, but had a bad habit of falling short when your needs outgrew its simplistic model. Winforms are just as simple and RAD-able as VB6, once you get over the migration annoyances and gotchas. By dinking VB6 with the .NET standard, they killed the VB6 language and experience, but you got a lot in return. Ever tried to have more than one thread in a VB6 application? I have, and trust me, you absolutely don't want to go there. The language doesn't support it. The runtime actually chokes on it without significant hacks. In .NET, a thread is as simple as could be. Ever tried to write a custom control in VB6? .NET makes it very simple. In VB6 you almost always have to write the control with ATL to get any real functionality or performance. Ever tried to use even the simplest amount of polymorphism in the VB6 language? Not a chance. .NET is far from perfect with regard to OOP, but at least you can have virtual functions that work correctly.
CategoryRant, after all