Skip to content
  • mnislaih's avatar
    :stepover ---> :steplocal, :stepmodule · 3240dc3b
    mnislaih authored
     :stepover is declared a failed experiment. 
    :steplocal steps only on ticks contained in the current
    top level declaration. 
    :stepmodule steps only on ticks contained on the current
     module. 
    The current top level declaration and module are with
     respect to the breakpoint we are stopped on.
    
     The main reason for the failure of :stepover
    (apart from lacking a lexical call stack of course)
    is that it fails to detect when the expression being 
    evaluated is "complete", i.e. there are no ticks left in it.
    My assumption of the rightmost tick as the "last one",
    signaling that the expression is completely evaluated,
    is not true at all under laziness. 
    This assumption was key in the implementation of :stepover.
     
    3240dc3b