I see some1 asked why VB/C# not java - answer is simple: TIME. Java just have a hell lot of overcoding like f-load of never used things loaded with EACH class, and u can't write one from raw. Simple example - program that have to read an input and write is elsewhere during stress test (inputs are single letters, a hell lot of them in 0 time) and average time of job done with same tests:
assembler - 0.04 s
basic functional languages (like OZ/OCaml/SmallTalk/Haskel) - 0.12 to 0.26 s
c/c++ - 0.45 s
java - almost 4 minutes
and its not a joke