Here’s a snippet to play with: p := Processor activeProcess. x := 2. v := TestDynamicVariable value: x during: [ ((p instVarNamed: 'env') ifNotNil: [ :env| env copyWithout: nil ]) inspect ].
((p instVarNamed: 'env') ifNotNil: [ :env| env copyWithout: nil ]) inspect Cheers, Max > On 04 Dec 2015, at 10:47, Max Leske <maxle...@gmail.com> wrote: > > I feel you :) > > Without having thought this through completely: if you look at the > implementation of DynamicVariable>>value:during: you’ll see that the way it > works is that the variable is bound to the active process. In the debugger > you have access to the process that is being debugged and thus you should > have access to the variables bound to it. You could try accessing all such > variables by iterating over them (which I think will require an extension on > Process because you’d need to access at least the PSKeys class variable). > > Cheers, > Max > >> On 04 Dec 2015, at 00:34, Mariano Martinez Peck <marianop...@gmail.com >> <mailto:marianop...@gmail.com>> wrote: >> >> Hi guys, >> >> This thing I will ask in this email it's in my mind since YEARS. But I have >> always thought it was like that and that there was nothing we could do. >> However, I think it's time I ask again :) >> >> For those that have used Seaside, and you try to debug, you know that upon >> request processing seaside uses Exceptions mechanisim to always have access >> to the request, session, etc. They way that is done is very smart :) >> >> WACurrentRequestContext use: self during: aBlock >> >> In that case, "self" is the request instance and aBlock the closure that >> takes care of the request processing. So, inside that closure, everywhere >> you do "WACurrentRequestContext value" you get the correct request instance. >> >> So..that's great for Seaside, but debugging gets complicated. While you can >> restart, proceed, etc, once inside debugger, you cannot evaluate any piece >> of code that will use the session or request because you get a >> WARequestContextNotFound. Of course, because I guess the evaluation you do >> from cmd+d on a piece of text or via the debugger inspector, creates another >> closure/context which does not receive the WACurrentRequestContext instance. >> >> Now....besides WACurrentRequestContext I have my own class >> UserContextInformation where I basically have a bunch of stuff associated to >> the logged user. And I do exactly the same as the WACurrentRequestContext. >> And I have the same problem. I really want to be able to fix this. >> >> Anyone have an idea on how can I do it? I guess I can change the debugger, >> in the place where I evaluate code so that I wrap that evaluation with my >> request context instance??? >> >> Thoughts? >> >> >> -- >> Mariano >> http://marianopeck.wordpress.com <http://marianopeck.wordpress.com/> >