Update other binary to not use L.Grammar.Compile
[L-seed.git] / src / dbclient.hs
1 import Lseed.Data
2 import Lseed.Data.Functions
3 import Lseed.DB
4 import Lseed.Grammar.Parse
5 import Lseed.Mainloop
6 import Lseed.Renderer.Cairo
7 import Control.Applicative
8 import Control.Monad
9 import Text.Printf
10
11 getGarden = spread <$> map (either (error.show) id . parseGrammar "" . dbcCode)
12                    <$> getCodeToRun
13   where spread gs = zipWith (\g p -> Planted ((fromIntegral p + 0.5) / l) p g inititalPlant) gs [0..]
14           where l = fromIntegral (length gs)
15
16 main = do
17         garden <- getGarden
18         obs <- cairoObserver
19         lseedMainLoop True obs 1 garden