I lost my train of thought halfway through my post.
I just found it:
About Java, I agree that client-side it sucks with a qualifier - It sucks only for closed-source programs. Why? Because it is quite easy to decompile it back into useable source (I have done this myself, and tried it on my own programs, and yes, the source is quite useable afterwards.). Server-side, it is not too bad, although admittedly possibly slower than other languages.
I go off on a tangent here, and have stuck it in a quote so it's separate and you may skip it and come back if you wish.
Linoleum has it beat there, excepting that is cannot use libraries (DLLs, or .o files, or whatever they are for *nix).
Of course, one CAN code support for additional things in the compiler, so that Linoleum programs can use them (and in a simplified manner.), such as I am doing for networking, with the author's permission (The lino compiler is open source with the proviso that you cannot modify it without the author's permission, so others can learn from it without being the risk of a thousand separate programs branching off like what happened with UOX).
For those of you who don't know what Linoleum is, it's like cross-platform assembly language with easier to understand syntax (i.e. A = 5; instead of mov eax, 5).
I'd actually call it "theoretically cross-platform" since there is presently no way to compile for any platform other than Windows, due to the RTM and instruction sets that lino code is translated into needing to be translated to any other platforms before a Lino app can be compiled to that platform.
(That's the end of the tangent).
As for C++, I think of it as someone's idea of a good way to make programming way too complicated. C is a bit better, but, Linoleum takes the cake as an easy-to-use yet low-level language. Most lino instructions compile to 1 ASM instruction, giving Lino programs even greater speed than C/C++. Nice, eh? I seem to be going off on that tangent again, and this post is sounding more and more like an advertisement for Linoleum. Forgive me, it's just that it's sooo much better than any other language I've ever used before.
Though I still use Java, mainly for projects that I started before in Java, or for things that find the concept of classes useful (I split things into separate files anyhow, despite the language. Well, I can't do that in QBasic. But *shrugs*. If you can make something like Flight Simulator in QBasic without going nuts, I bow to thee. Especially considering getting graphics beyond 320x200x256 colors or 640x480x16 colors requires importing compiled ASM code, using the mouse requires importing compiled ASM code, and so on and so forth. And it'll always be a DOS app.
), though I don't know of anything offhand that classes are so important to that it couldn't be done with a buncha lists of either 32-bit floats or 32-bit integers or 32-bit pointers to something else (like a string of 32-bit characters. Yeah. But it works, and is actually faster from what I hear than 8-bit strings.) and subroutines which take parameters, return values if you want, etc, etc, etc.
I stop now.