Maury Markowitz #1 Posted August 9, 2019 I asked on SO, but it seems that's drawing a blank, so maybe someone here knows. I was always under the impression that MS BASIC implemented NEXT by pushing the address of the FOR on the stack. So convinced that when I read the source code I assumed CURLIN had to be referring to the address, not the line number. Quelle surprise! Now recall that MS BASIC does NOT allow you to add or remove lines during a STOP/CONT - anything that might change addresses will cause the CONT to fail. So they didn't use the line number in order to allow CONT after modifying the code. So why did they then? If you used the address the NEXT code gets a bunch of lines shorter and a whole lot faster. Quote Share this post Link to post Share on other sites