Quote:What about 100% support for "original" (the current one, PDS 7.1) basic, and extended support, allowing to create 32bit applications and using 32bit libraries (designed esp. for this)
VB is 99% compatible with PDS, the language is the same. Direct video access (I mean, no windows) isn't possible unless you wrap DirectX or the GDI, but you can do that in VB already. It would be nice to have it done transparently, but that has to do with Nekrophidius' forthcoming (I hope) compiler.
Quote:But seriously, a new compiler, that creates more optimized code.
It can be done, and it wouldn't be impossible.
Sure, the Microsoft Basic Compiler is shit, the output is so slow, it could be easily improved. But what's the point on building yet another MSDOS (16 or 32 bits) compiler? MSDOS is getting more and more problematic.
Plus, if you really want one, look for PowerBasic 3.5.
Quote:Imagine, the simplicity of BASIC, but the "power" (read: speed) of C
That's impossible. To make BASIC as fast as C you have to:
1.- Add pointers. I mean true pointers. In BASIC you can get a pointer to a piece of data, but nothing else.
2.- Take away all the boundary checks. Such stuff can only be performed in execution time and slowens down the program execution a TAD. It is there to make BASIC simpler to use and to debug. In C, if you write outside an array you will crash the computer, most likely.
3.- Take away the string handler. Coding in BASIC is so simple 'cause the strings are taken care of by the runtime (done in the best way, but not always "the faster" way). In C you have to do it yourself.
4.- Take away (or translate) the deprecated stuff allowed for backwards compatibility.
5.- Change the file managing system to a lower level. In C you deal directly with the file descriptor, in QB it happens like with the STRINGS: you get a handler and the runtime does the rest.
6.- Take away the error managing, and all the execution-time checks.
7.- Change the ports and interrupts managing to a lower level. You are talking to QB, not to the machine, for the sake of security and trying to allow as many crashes as possible. That is slow.
8.- Allow the user to do all the memory management. Currently it is done automaticly.
BASIC is in a very high level to be as fast as C, a language that is, sometimes, "almost assembly". If we make the aforementioned changes to BASIC we put down its simplicity, i.e. its whole point.