Changes between Version 37 and Version 38 of NewGhciDebugger


Ignore:
Timestamp:
Apr 9, 2007 2:34:06 PM (8 years ago)
Author:
guest
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • NewGhciDebugger

    v37 v38  
    159159The `:step` command accepts an optional argument expression. The expression is evaluated as usual, but the computation will stop at the first breakable expression which is encountered, for example: 
    160160{{{ 
    161    *Main> :step foo True [1,2,3] 
     161   :step foo True [1,2,3] 
    162162}}} 
    163163where `foo True [1,2,3]` is the expression that we want to evaluate. 
     
    182182   }}} 
    183183   Suppose we have a breakpoint set somewhere inside the computation done by `foo`, but there are no breakpoints in the computation done by `bar`. 
    184  
    185184   When we run this program in GHCi the following things happen: 
    186185      1. `foo` gets forked and `foo` and `bar` begin their work 
    187186      2. `bar` completes its job and we return to the GHCi prompt (uh oh!) 
    188187      3. `foo` eventually hits a breakpoint and attempts to return to the command line, but it can't because we are already there (in the previous step). 
    189  
    190188   Now the foo thread is blocked, so we can't witness the breakpoint. 
    191189