Gut, lieber eine Klammer zu viel, als nachher einen Compile error. Das Decompilat ohne Klammern ist 132 Blocks lang und das mit Klammern ist 144 Blocks lang. Der Größenunterschied,
das sind nur die Klammern. Das Compilat wäre damit auch zu lang, und würde bei "Let's Go 5" andere Daten überschreiben. Klammern setzen ja, aber das ist zuviel das Guten.
Dass es so einen Unterschied macht, hätte ich jetzt nicht gedacht.
Ich dachte, die Ausdrücke würden vom Compiler auf eine Art Stapel zur Auswertung gegeben (so wie Forth rechnet). Dann würden die Klammern keine Rolle spielen. Aber ich habe mich länger nicht mehr mit dem P-Code beschäftigt.
ZitatPS: Wovon ich immer träume, wäre ein P-Code Compiler mit 24Bit Adressierung. Dann könnte man den P-Code in der SCPU, ab Bank $02 also $020000 ablegen.
z.B. 19,02,de,32 -> GOTO $02DE32
Und ich träme davon zumindest den Decompiler in C# nachzubauen. Da kann man gewisse Optimierungen (Klammerminimierung usw.) ganz anders angehen, als mit dem MS-Basic V2. Deshalb bin ich aber auch so erstaunt, dass in den achziger Jahren jemand in diesem Basic symbolisch differenzieren konnte (gerade in ALI) und die Ausdrücke dann auch noch vereinfacht wurden. Allein das ist einen Blick auf den Souce-Code wert.