When I profile my program's heap usage with -hy flag like
./prog +RTS -hy
I often see the constructor *
in the results, along with other constructors such as []
and Word8
.
What is the type *
in this context? Is it related to kinds
?
When I profile my program's heap usage with -hy flag like
./prog +RTS -hy
I often see the constructor *
in the results, along with other constructors such as []
and Word8
.
What is the type *
in this context? Is it related to kinds
?
Quoted from Real World Haskell:
There's also some heap allocated data of unknown type (represented as data of type "*").
And in the GHC User's Guide:
For closures which have function type or unknown/polymorphic type, the string will represent an approximation to the actual type.
So, it means basically that the profiling doesn't have enough information to tell what type it is.