Say I have the following:
data Rec = Rec {
alpha :: Int,
beta :: Double,
phi :: Float
}
sample = Rec 1 2.3 4.5
I understand Template Haskell & the reify
function can get me the record's field names. That is:
print $(f sample) --> ["alpha", "beta", "phi"]
There is also a claim that this can be done without Template Haskell. Can someone provide an example implementation for this can be accomplished?