I wonder how useful it would be if a basic compiler only supported a subset of the language. I think its better to do a 100% compatible Basic compiler although it may be slightly slower.
then Is XBASIC KUN compiler useless because does not support all the crappy msxbasic features?
I think no...
XBASIC is a different language than MSX Basic so thats a different story. I don't say its useless but I think a compiler should support the entire language it tries to compile.
Even with partial language support it will be useful though. C compilers and assemblers may be hard for some developers to learn and setup so I'm sure that your compiler will be helpful for developers that like high level languages.
But I'm quite interested in computer languages and compilers and stuff like that and I think it would be better with full language support. Otherwise you'll more or less creating a new language based on MSX Basic but one that is not as rich.
Hey... there's the NestorBASIC!
Wouldn't the lack of registers mean that code will end up extremely large, compared to the basic equvalent? Also I tend to wonder if there is any need to speed up msxbasic? Wouldn't a more modern interpretation (no pun intended) geared towards games be more worthwhile?
The big benefit I see with having an MSX Basic compiler is that you can write your games in regular basic and test them on the fly. Then when you are happy with the result you'll compile them and you get the performance increase.
But you're right that MSX basic may not be the most suitable basic for game development. It is however quite feature rich and at its time I think it was one of the better ones.
Well as i've said before i've only very lately looked at the msx, and only super recently at msxbasic so I may be wrong. To my mind its like trying to soup up a 1971 Ford Cortina, in that it will still look like a Ford Cortina but faster, and who is going to want to buy a ford cortina now. Basically are there any msxbasic programs that would be any better just because they were quicker? and who would write new stuff given that msxbasic will still only be able to produce limited results.
Worrying about what seems to be compliance with unstructured FOR NEXT and whatever else seems somewhat silly.
I'd suggest a modern version of basic geared towards the types of games the MSX can do, and perhaps tools to exploit it.
Why not a extended MSX-BASIC?
I mean, Qbasic loops (like while, end...) and better IF-THEN-ELSE structures...
I allways missed conditional loops like them and IF is too slow...
"I'd suggest a modern version of basic geared towards the types of games the MSX can do, and perhaps tools to exploit it."
"I mean, Qbasic loops (like while, end...) and better IF-THEN-ELSE structures...
I allways missed conditional loops like them and IF is too slow..."
YAY!!!
why not write a very simple Bytecode or MSIL compiler, then add a MSX Framework API as the core of the system. Maybe have a version of the MSX Framework running on the Java or DotNet API.
In case we use MSIL we bring all the languages like: VB.NET, C#, Delphi, Cobol, Java (J#) etc to the MSX platform right. In case we choose Bytecode we can bring Java to the MSX as the main development language.
Might be an idea?
Why not a extended MSX-BASIC?
I mean, Qbasic loops (like while, end...) and better IF-THEN-ELSE structures...
I allways missed conditional loops like them and IF is too slow...
In this way you really create a other basic, that is not my goal. my goal is:
write your orrible msxbasic program, accepting some 'limitation' such as no tricky for next (that are also poor style programming), test on interpreter, then convert into 'c' and compile in a faster form, without the need of anything to run.