summaryrefslogtreecommitdiff
path: root/src/server
diff options
context:
space:
mode:
authorkrasimir <krasimir@chalmers.se>2010-09-30 07:35:54 +0000
committerkrasimir <krasimir@chalmers.se>2010-09-30 07:35:54 +0000
commitc200232bfd90b4460051c95bc03621a442d836fb (patch)
treed63cc200786bd1949f5b064adfa50c78a8dbccb8 /src/server
parent3c3082f8ee84c103622740f5bbfbdd9d931f1087 (diff)
update PGFService to work after the extensions in the random generation API
Diffstat (limited to 'src/server')
-rw-r--r--src/server/PGFService.hs5
-rw-r--r--src/server/gf-server.cabal3
2 files changed, 6 insertions, 2 deletions
diff --git a/src/server/PGFService.hs b/src/server/PGFService.hs
index c858752e0..f28bce67b 100644
--- a/src/server/PGFService.hs
+++ b/src/server/PGFService.hs
@@ -23,6 +23,7 @@ import Data.List (sortBy,intersperse,mapAccumL)
import qualified Data.Map as Map
import Data.Maybe
import System.Directory
+import System.Random
import System.FilePath
import System.Process
import System.Exit
@@ -466,7 +467,9 @@ linearizeAndBind pgf mto t = [(la, binds s) | (la,s) <- linearize' pgf mto t]
_ -> []
random' :: PGF -> Maybe PGF.Type -> IO [PGF.Tree]
-random' pgf mcat = PGF.generateRandom pgf (fromMaybe (PGF.startCat pgf) mcat)
+random' pgf mcat = do
+ g <- newStdGen
+ return $ PGF.generateRandom (PGF.RandSel g) pgf (fromMaybe (PGF.startCat pgf) mcat)
selectLanguage :: PGF -> Maybe (Accept Language) -> PGF.Language
selectLanguage pgf macc = case acceptable of
diff --git a/src/server/gf-server.cabal b/src/server/gf-server.cabal
index 619efdde1..21ce08bb4 100644
--- a/src/server/gf-server.cabal
+++ b/src/server/gf-server.cabal
@@ -21,7 +21,8 @@ executable pgf-server
json >= 0.3.3,
utf8-string >= 0.3.1.1,
bytestring,
- pretty
+ pretty,
+ random
if !os(windows)
build-depends: unix
main-is: PGFService.hs