on master help sign in
Added some strictness.
commite5202ce852dbafd8a54ea0dce2de6fe5ab6ef5b1 authorJasper Van der Jeugt <jaspervdj@gmail.com> dateMon 11 Jan 2010, 09:19 (17 years ago) parent7c3b55e
2 files changed+7−3
hakyll.cabal+2−1 src/Text/Hakyll/Page.hs+5−2
hakyll.cabal+2−1
@@ -34,7 +34,8 @@ library
3434 network >= 2,
3535 mtl >= 1.1,
3636 old-locale >= 1,
37− time >= 1
37+ time >= 1,
38+ parallel >= 1
3839 exposed-modules: Text.Hakyll
3940 Text.Hakyll.Render
4041 Text.Hakyll.Renderable
src/Text/Hakyll/Page.hs+5−2
@@ -10,6 +10,8 @@ import qualified Data.Map as M
1010import qualified Data.List as L
1111import Data.Maybe (fromMaybe)
1212
13+import Control.Parallel.Strategies (rnf, ($|))
14+
1315import System.FilePath (FilePath, takeExtension)
1416import System.IO
1517
@@ -110,13 +112,14 @@ readPage pagePath = do
110112
111113 -- Render file
112114 let rendered = (renderFunction $ takeExtension path) body
113− seq rendered $ hClose handle
114− let page = fromContext $ M.fromList $
115+ page = fromContext $ M.fromList $
115116 [ ("body", rendered)
116117 , ("url", url)
117118 , ("path", pagePath)
118119 ] ++ context
119120
121+ seq (($|) id rnf rendered) $ hClose handle
122+
120123 -- Cache if needed
121124 if getFromCache then return () else cachePage page
122125 return page