Metrics Strictness
Metrics Strictness
Consider the MetricsStore
type that you defined earlier in this chapter:
data MetricsStore = MetricsStore
successCount :: Int
{ failureCount :: Int
, callDuration :: Map.Map String Int
,deriving (Eq, Show) }
How might you make use of strictness to improve the performance of metrics? Try writing some metrics collecting functions using several different approaches to strictness and profiling the results.
Hint 1
Some high level hint text
Hint 2
Some more detailed hint text
Hint 3
Even more detailed hint text
Solution
A complete solution for the exercise