In my experience, benchmarks can be very misleading. This is partly because the code in benchmarks is often highly artificial and is rarely representative of 'real' programs. For example a benchmark may time how fast an empty FOR'...NEXT loop runs, but real programs don't have empty FOR...NEXT loops!I am not sure what your views are on benchmarks, can you elaborate on that please?
Imagine a situation in which Interpreter A executes the NEXT statement in 2ns and Interpreter B executes the NEXT statement in 20ns, but in both interpreters even the shortest 'useful' statement (e.g. assigning a value to a variable) takes at least 100ns. A benchmark timing an empty FOR...NEXT loop would report that Interpreter A runs ten times faster than Interpreter B - wow! But add a single useful statement in the loop and now Interpreter A takes 102 ns per loop and Interpreter B 120ns per loop; not ten times the speed but only 18% faster!
Then there's the issue of benchmarks being manipulated. I have personal experience of this because I did it myself, way back in 1981! When my BBC BASIC (running on a 4 MHz Z80) was benchmarked against Acorn's BBC BASIC (2 MHz 6502) mine was slower. Oh dear! I couldn't find any way to significantly speed up my BASIC, but I realised that the benchmark program (originally written for some earlier BASIC, probably Microsoft) used regular variables to hold integer values.
Now in Acorn's BBC BASICs a regular variable (without any suffix character) is a floating-point variable, and any arithmetic is performed using floating-point calculations, even if the value is an integer (to use fast integer arithmetic you have to add a % suffix character to the variable name). So I modified my Z80 BBC BASIC so that a regular variable containing an integer value used integer arithmetic. Now the benchmark ran much faster, but it was a lie because my interpreter was using integer arithmetic and Acorn's floating-point arithmetic! Adding % suffix characters to both, to establish a level playing field again, restored Acorn's lead.
So make the enhancements optional. Or even offer two different versions (after all there are already two IDEs supplied, adding a third isn't a big deal).I will review the IDE again.. but surely it needs community involvement. Some might be completely against touching it.
I've said quite recently that a risk with making BBC BASIC Open Source was that anybody can then make changes, without any consideration being given to the 'spirit' of BBC BASIC and the ways that things have always been done in the language (admittedly they couldn't call the resulting language BBC BASIC because that name is owned by the BBC and only I have permission to use it).The part that made me sad about QB64, is the reason the project lead stepped down and how things quickly escalated and turned into chaos, which I hop is not a possible scenario with BBC Basic.
So far this hasn't happened, but that's probably because I'm still around to make a fuss if it did. But you are right to be concerned about what might happen if I resigned from that role and there was a free-for-all.