...Java... It just has one variable type.
Eh?
Nothing wrong with C++. You can wrap it up in quaint little helper functions too, if you like. Just like BlitzMax has done. You think BlitzMax doesn't do the whole float->string conversion stuff behind the scenes? In fact, BlitzMax is just sitting on top of C++...
BlitzMax is the only one that has memory management, cross-platform compatibility, and multithreading (soon). It can make DLLs.
All of which you can do in... C++, amongst many others. Python also comes to mind.
BlitzMax the Best?
Not really, but it's definitely my favourite.