
11 Apr
2010
11 Apr
'10
8:06 p.m.
On 11 April 2010 22:11, Johannes Waldmann
Louis Wasserman
writes: I compiled my code with -fdicts-strict.
What is this actually supposed to do? It seems the documentation is missing: http://www.haskell.org/ghc/docs/latest/html/users_guide/options-optimise.htm...
From reading the source code, it appears to make any dictionary fields of GADTs strict. So the dictionary for Eq in:
data EqDict a where EqDict :: Eq a => EqDict a Will be a strict field.
Anyway my guess is that if you want to use this flag, then you'd need to (re-)compile the whole world (including (base) libraries).
I don't think this requires a recompile - although of course any GADTs compiled without -fdicts-strict will be lazily evaluated. Cheers, Max