summaryrefslogtreecommitdiff
path: root/src/compiler/GF/Compile/Compute/AppPredefined.hs
diff options
context:
space:
mode:
authorhallgren <hallgren@chalmers.se>2011-09-01 16:39:41 +0000
committerhallgren <hallgren@chalmers.se>2011-09-01 16:39:41 +0000
commit875df01dc6427afab39131672a9d7ce62059b828 (patch)
tree85243e87c8e758dc4345d491b6783d13dde18b1d /src/compiler/GF/Compile/Compute/AppPredefined.hs
parentbfe4b0b2a4e5b761b287f9110e19af5b9430dbbb (diff)
Add lazy version of GF.Compile.Compute.Concrete
This patch adds GF.Compile.Compute.ConcreteLazy, which replaces the Err monad with the Identity monad. While the Err monad makes the interpreter (hyper)strict, the Identity monad let's the interpreter inherit Haskell's laziness. This can give big speedups: from 50s to 1s in one example, from ~4 minutes to ~2 minutes for the RGL. This is still experimental and might be buggy, so it is off by default. You can turn it on by configuring with the -fcclazy flag, e.g. cabal configure -fcclazy Let me know if anything breaks.
Diffstat (limited to 'src/compiler/GF/Compile/Compute/AppPredefined.hs')
0 files changed, 0 insertions, 0 deletions