Consider adding new stg_ap_* functions
Currently, the RTS has a fixed set of
stg_ap_* functions. There are two problems with this:
- All programs pay for these functions, even programs that don’t use them. Furthermore, it is not possible for new ones to be generated by GHC for certain cases.
- The set included in the RTS may not be optimal.
(1) is a lot of work, but dealing with (2) should be “just” a matter of hunting down which functions would be useful. I would start with ByteString, Text, and other highly optimized libraries, some of which (such as ByteString) are very widely used.