The advantage of this method is the execution speed of the final product and ability to use platform dependant special functions like the windows API on windows systems. Purebasic compiles into native executables instead of using a cross platform execution stack like Java does.
So you get the simplicity of a basic language without the basic language limitations as you can seamlessly use platform DLL's/Libraries and you can even include hand optimized assembler code if you need it.
"Write once and run anywhere" would be C or Java
ps: it gets even better, the latest purebasic version 6 includes a C backend which uses the rock solid and very performant gcc compiler suite to build the final executable.