Open mgsloan opened 8 years ago
This changes most of the code in the package and adds quite a bit more. If you don't want to maintain this code, I can add these to th-orphans. Then, this package could release a version that re-exports th-orphans
.
I'm a bit surprised by how hard it is to efficiently create literal data for those types. How would I, as a GHC user, have a huge bytestring literal in my source code (not using TH)? Would that exhibit the same performance problems?
I will probably still accept the PR after I reviewed all of it, but is this a bug in GHC as well?
Also, there are travis failures (you can ignore the GHC 7.10 one, that is a problem with the travis script, I'll fix that myself)
Ok, I have reviewed everything and added comments where I have questions. Still a little bit worried about having so much code using internals, but looks like there is no other way.
This drastically improves compiletime, and usually runtime as well.