
Alexey Rodriguez Yakushev
Hi all, I am attempting to trace a program (Djinn) that uses library modules that are not supported by Hat, such as Control.Monad.ST .
I was planning to add them to either add them to Hat before building or directly to the program itself. However, I fear that this and other modules were left out because there was some fundamental limitation of Hat when dealing with these. I don't want to discover this after hours of trying so I decided to ask here :).
No, there is no fundamental reason why Control.Monad.ST is not currently traced. For STRefs, just follow the scheme that is already used for tracing IORefs. The rank-2 type of runST might pose a rather interesting question - I doubt whether hat-trans can generate the correct transformed type for it. However, you can probably write its transformed type by hand, with some careful thought. Regards, Malcolm