koneki - Way to write code "in the debugger" in Lua? -
i played around bit lua , tried koneki eclipse plugin, quite nice. problem when make changes in function i'm debugging @ moment changes not become effective when saving changes. i'm forced restart application. nice if make changes in debugger , become effective on fly example smalltalk or extend in hot code replacement in java. has clue whether possible?
it possible degree limitations. i've been developing ide/debugger provides functionality. gives access remote console execute commands in context/environment of running application. ide supports live coding, reloads modified code make changes it; see demos here.
the main limitation can't modify running function (at least without changes lua vm). means effect of changes running function seen after exit , re-enter function. works environments call same function repeatedly (for example game engine calling draw
), may not work in case.
another challenge dealing upvalues (values created outside of function , referenced inside it). there methods "read" current upvalues , re-create them when (new) function created, requires code analysis find functions recreated query them upvalues, current values, , create new environment upvalue , assign proper values them. current implementation doesn't this, means need use global variables workaround.
there relevant discussion other day on lua mailing list.