On Aug 13, 2011, at 10:44 AM, John Clements wrote:

> That is, the code for lazy racket contains the knowledge about which things 
> should be hidden by the stepper.  I would argue, in fact, that this is the 
> *right* place for such knowledge. In particular, suppose you're developing 
> the lazy stepper, and you want to say, "this thing here is hidden." How do 
> you point to a particular expansion? You want to make an annotation in the 
> code for the expansion itself.  The alternatives I can think of are all 
> hideously fragile, unless you go to some AOSD approach, but I think that this 
> would wind up being even more verbose, and not substantially less fragile.
> 
> That is, I think that the "subtle problem" above is not actually a problem at 
> all.


Let me try to say what I understand out loud: 

1. The existence of Stepper knowledge in the Lazy compiler creates a 
'spiritual' dependency between the Lazy language and a tool in DrRacket (= Tool 
world). QUESTION: does this knowledge ever make sense outside of our tool 
suite? Could it be reused by a stack-tracing debuggger in a textual repl? 

2. At the same time, this Tool knowledge is best injected into compilation just 
in case we want it. QUESTION: does some knowledge about Lazy compilation move 
into the Stepper if we don't inject the knowledge here? 

3. I agree with John though I am actually hopeful that we can come up with a 
software architecture that eliminates the problem and isn't AOSD all the way. 
Is it possible to view this knowledge as a mixin that gets added to the Lazy 
compiler when the language lives in the Tool world? 

-- Matthias


_________________________________________________
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev

Reply via email to