You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I discovered this when I was trying to print out a lot of stuff to test the problem I was having with a throttle of infinity (which used to work in old versions of kOS and just became a throttle of 1.0 effectively). When trying to diagnose that problem I ended up trying a lot of stuff at the interactive mode terminal that accidentally exposed this other problem:
Examine this output from the interactive terminal:
lock var to 0.5.
print var.
0.5
lock var to 0.4.
The given key was not present in the dictionary.
set var to 0.4.
The given key was not present in the dictionary.
set anotherVar to 5
The given key was not present in the dictionary.
copy testprog from 0.
The given key was not present in the dictionary.
This only happens in interactive mode. Once I try to "lock var to ..." a second time for a var that's been locked already, all statements parsed from then on seem to be broken, for all variables, even new ones, and any statement.
The same problem does not happen when doing it inside a program file. The following program runs just fine:
lock var to 0.5.
print var.
lock var to 0.4.
print var.
lock anotherLock to 5.0.
print anotherLock.
set anotherVar to 6.0.
print anotherVar.
Does this have something to do with the difference between how the parser behaves when it can see the upcoming future statements ahead of time (in a program file) versus when it can't (in interactive mode)?
The text was updated successfully, but these errors were encountered:
I discovered this when I was trying to print out a lot of stuff to test the problem I was having with a throttle of infinity (which used to work in old versions of kOS and just became a throttle of 1.0 effectively). When trying to diagnose that problem I ended up trying a lot of stuff at the interactive mode terminal that accidentally exposed this other problem:
Examine this output from the interactive terminal:
This only happens in interactive mode. Once I try to "lock var to ..." a second time for a var that's been locked already, all statements parsed from then on seem to be broken, for all variables, even new ones, and any statement.
The same problem does not happen when doing it inside a program file. The following program runs just fine:
Does this have something to do with the difference between how the parser behaves when it can see the upcoming future statements ahead of time (in a program file) versus when it can't (in interactive mode)?
The text was updated successfully, but these errors were encountered: