Changes between Version 64 and Version 65 of ExplicitCallStack


Ignore:
Timestamp:
Feb 9, 2007 1:18:51 PM (7 years ago)
Author:
bjpop
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • ExplicitCallStack

    v64 v65  
    392392 
    393393These are largely the same definition, just written in different style. One might expect them to result in the same stack trace. But the above transformation rule treats them differently, because the `g1` is a pattern binding, whereas `g2` is a function binding. 
     394 
     395== Issue with type classes and instances == 
     396 
     397One problem with a selective transformation scheme is how to transform overloaded functions. Suppose we have the following type class: 
     398{{{ 
     399   class Wibble t where 
     400      wibbit :: t -> t -> (t, t) 
     401      wabbit :: t -> Bool 
     402}}} 
     403And we have these instances: 
     404{{{ 
     405   instance Wibble Int where 
     406      wibbit x y = ... 
     407      wabbit x = ... 
     408 
     409   instance Wibble MyType where 
     410      wibbit x y = ... 
     411      wabbit x = ... 
     412}}}