Changes between Version 16 and Version 17 of GhciDebugger


Ignore:
Timestamp:
Feb 1, 2007 3:00:55 PM (8 years ago)
Author:
mnislaih
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • GhciDebugger

    v16 v17  
    213213The types would be:
    214214{{{
     215data Locals = forall a. Locals a
     216
    215217breakpointAutoJump, breakpointJump ::
    216218                    Int                         -- Address of a StablePtr containing the Ids
    217                  -> [()]                        -- Local bindings list
     219                 -> [Locals]                    -- Local bindings list
    218220                 -> (String, String, Int)       -- Package, Module and site number
    219221                 -> String                      -- Location message (filename + srcSpan)
    220222                 -> b -> b                 
    221 breakpointCond :: Int -> [()] -> (String,String,Int) -> String -> Bool -> b -> b
    222 }}}
    223 They get filled with the pointer to the ids in scope, their values, the site, a message, and the wrapped value in the desugarer. Everything served with the right amounts of unsafeCoerce sauce and TyApp dressing to make the generated Core lint.
     223breakpointCondJump :: Int -> [Locals] -> (String,String,Int) -> String -> Bool -> b -> b
     224}}}
     225They get filled with the pointer to the ids in scope, their values, the site, a message, and the wrapped value in the desugarer. Everything served with the right amounts of unsafeCoerce sauce and TyApp dressing to make sure it core-lints.
    224226
    225227The site number is relevant only for 'auto' breakpoints, explained later. For the other two types of breakpoints its value should be 0.
    226228
    227 The desugarer monad has been extended with an OccEnv of Ids to track the bindings in scope. Of course this environment thing is probably too ad-hoc to use it for anything else. The monad also carries a mutable table of breakpoint sites for the current module. This is explained below.
     229The desugarer monad has been extended with an OccEnv of Ids to track the bindings in scope. Of course this environment thing is probably too ad-hoc to use it for anything else. The monad also carries a mutable table of breakpoint sites for the current module. This table is propagated to the ModGuts.
    228230
    229231=== Default HValues for the Jump functions ===