I think 6502 machines can do better with a version of BASIC that can compile into machine language binary files. One that has advanced commands for moving sprites and checking for collisions, etc. A BASIC compiler if you will?
But then you lose one of main reasons why so many programs were written in a mix of BASIC+assembly. BASIC's tokens were effectively a "virtual machine" with more functionality and a more expressive/"memory efficient" assembly language. Many of the basic programs on the apple ][ simply couldn't have been written in straight C/assembly without running out of RAM. Of course, its possible to build another virtual machine in assembly, or simply call directly into the BASIC routines in ROM, but that doesn't really buy much over just writing the application in BASIC looking for the places where BASIC is to slow, or doesn't support an operation you need and calling assembly.
I remember the day I broke into Ultima and discovered that it was mostly BASIC. I was like WOW, game programmers write in basic too. It validated the way I had hacked together my own ultima clone. (many years after the initial ultima, I was to young in the early 80's to be writing code).
White Lightning [1] [2]. The original version is Forth, but it also offers BASIC extensions and I seem to remember there's a "compiler" though a at least some of the BASIC compilers for 6502 based platforms did little more than turn the BASIC into a bunch calls into the BASIC interpreter to sidestep the interpreter loop so that might not say much.
EDIT: Here's the manual for Basic Lightning [3] which mentions in the preface that a compiler was due to be released in 1985.
EDIT2: Ah, it changed name to Laser BASIC when the compiler was released [4]
I won't ever forget typing in seemingly endless columns of hex numbers from a magazine to obtain both the interpreter and the compiler... (here are some original scans & documentation: http://www.tmeyer.de/atari/index.html).
Back in 8-bit days I didn't have access to the Turbo Basic XL, but was reading about it. I was really excited about the new features (speed, graphics commands, control structures) and at the same time miserable that I can't use it. The local computer shop offered a lot of Polish Atari games (they were great [1]), but not so much tools.
Anyway, once I bought a new game "Kolony", stored on a cartridge. It was a multiplayer game, asking about the number of players before start. Accidentally, I pressed CTRL+3, which caused some error and I got the BASIC prompt. It turned out that the whole game was written in Turbo Basic XL and the cartridge included the interpreter as well. I just have to type NEW to erase the game code itself and start programming in the new BASIC flavour.
I always wondered why they didn't make disks available for sell with the programs on them? The two assembly programs I remember the best having to type out myself for the Apple //e was one that added double high resolution graphics commands to Applesift Basic and one typing out shape tables of letters so you could easily mix text with graphics.