X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=docs%2Fusers_guide%2Fparallel.xml;fp=docs%2Fusers_guide%2Fparallel.xml;h=7792ea651abde3e7ee45d4dc7606d90e581bf66f;hb=fcf6ab7b3dfe389e971059bbf21dfa8179b20f5e;hp=3d14622cf15ed723db881025d3ad1cfcb4d3e206;hpb=8c2549461d624ad5cfec9be3266bdfd016371658;p=ghc-hetmet.git diff --git a/docs/users_guide/parallel.xml b/docs/users_guide/parallel.xml index 3d14622..7792ea6 100644 --- a/docs/users_guide/parallel.xml +++ b/docs/users_guide/parallel.xml @@ -136,7 +136,7 @@ import Control.Parallel nfib :: Int -> Int nfib n | n <= 1 = 1 - | otherwise = par n1 (seq n2 (n1 + n2 + 1)) + | otherwise = par n1 (seq n2 (n1 + n2)) where n1 = nfib (n-1) n2 = nfib (n-2) @@ -149,8 +149,8 @@ nfib n | n <= 1 = 1 (leaving the parent to evaluate the other branch). Also, we must use seq to ensure that the parent will evaluate n2 before n1 - in the expression (n1 + n2 + 1). It is not sufficient - to reorder the expression as (n2 + n1 + 1), because + in the expression (n1 + n2). It is not sufficient + to reorder the expression as (n2 + n1), because the compiler may not generate code to evaluate the addends from left to right.