RockTheSchock wrote:Maybe with fbc 2.0 there have to be another break. "-lang fb2" No more quirk syntax at all. Maybe with a seperate 2-pass-compiler from scratch which supports class keyword. No more type/ class aliases needed.
I agree that we should update the FreeBasic language as it still contains quite a lot of legacy stuff. Of course this would break compatibility, so maybe it should be really a new -lang option, although there are already several (which adds complexity to the compiler and may confuse users). For example there are these integrated commands with a custom syntax like LINE. I would also consider moving all fbgfx stuff or better all integrated functionality into an own namespace
as these names clutter the global namespace
. Of course there should be still some option to import the names into the current namespace
with some "using" or "import" clause.
However, changing the FreeBasic language in a way so that no backwards compatibility is given could also be a risk. Take Python 2.7.x vs. Python 3.x as example. There weren't that many changes (for example: print "Hello World" has to be written as print("Hello World") in 3.x) but still many users refused to switch to Python 3.x and kept using 2.7.x. The situation got better over time, but it needed several years.
This could especially be a problem for BASIC, as there are many elder people using it, who are often more skeptical regarding changes of well-known things / introducing new things - compared to young people.