Teach GHC about the evaluatedness of compacted things
Motivation
The result values of compactAdd#
and compactAddWithSharing#
are always in normal form. Unfortunately, the compiler doesn't know that.
Proposal
Use the same trickery that seq#
employs to teach GHC what's what. Be sure to make the pointer field in Compact
strict to take advantage of this.