I wonder if we should do something about these kind of functions: Theres the definition "MAX_FUNCTION_DEPTH 512" in defaults.h that prevents functions from nesting infinitely deep:
addtofunc foo i foo foo => ok But this is not good: addtofunc foo + i foo + i foo h hangs: foo Although functions above the maximum depth abort, it still executes about 2^512 leaf functions before finally exiting, i.e. it never completes. I could add an execution counter that limits the total number of command lines that can be executed from a single top level function call; maybe limit that to 1000. -- Another problem: It's possible to add items to functions that are currently in use. addtofunc foo i bar addtofunc bar i addtofunc foo i bar # hangs: foo Not sure if we should just forbid to add items to running functions. Ciao Dominik ^_^ ^_^ -- Dominik Vogt