diff --git a/Clock/Main.hs b/Clock/Main.hs
--- a/Clock/Main.hs
+++ b/Clock/Main.hs
@@ -55,7 +55,7 @@
 	--
 	circNm1 
 	 = Pictures
-		[ circle 1 50
+		[ circle' 1 50
 		, Scale (a/2.5) (a/2.5) $ clockFractal (n-1) s
 		, if n > 2
 		    then Color cyan	
@@ -78,12 +78,12 @@
 
 
 -- Make a circle of radius r consisting of n lines.
-circle :: Float -> Float -> Picture
-circle r n
+circle' :: Float -> Float -> Picture
+circle' r n
  	= Scale r r
 	$ Line (circlePoints n)
 	
-	
+
 -- A list of n points spaced equally around the unit circle.
 circlePoints :: Float -> [(Float, Float)]
 circlePoints n
diff --git a/Conway/Main.hs b/Conway/Main.hs
--- a/Conway/Main.hs
+++ b/Conway/Main.hs
@@ -3,6 +3,7 @@
 import World
 import Cell
 import Graphics.Gloss
+import Graphics.Gloss.Interface.Simulate
 import qualified Data.Vector	as Vec
 
 main :: IO ()
diff --git a/Conway/World.hs b/Conway/World.hs
--- a/Conway/World.hs
+++ b/Conway/World.hs
@@ -5,6 +5,7 @@
 import System.Random
 import Control.Monad
 import Graphics.Gloss
+import Graphics.Gloss.Interface.Simulate
 import qualified Data.Vector	as Vec
 type Vec	= Vec.Vector
 
diff --git a/Eden/Main.hs b/Eden/Main.hs
--- a/Eden/Main.hs
+++ b/Eden/Main.hs
@@ -3,6 +3,7 @@
 module Main where
 import World
 import Graphics.Gloss
+import Graphics.Gloss.Interface.Simulate
 import System.Random
 
 -- varying prng sequence
diff --git a/Eden/World.hs b/Eden/World.hs
--- a/Eden/World.hs
+++ b/Eden/World.hs
@@ -1,7 +1,7 @@
 module World where
 
-
 import Graphics.Gloss
+import Graphics.Gloss.Interface.Simulate
 import System.Random
 import Community
 import Cell
diff --git a/Lifespan/Main.hs b/Lifespan/Main.hs
--- a/Lifespan/Main.hs
+++ b/Lifespan/Main.hs
@@ -3,6 +3,7 @@
 module Main where
 import World
 import Graphics.Gloss
+import Graphics.Gloss.Interface.Simulate
 import System.Random
 
 -- varying prng sequence
diff --git a/Lifespan/World.hs b/Lifespan/World.hs
--- a/Lifespan/World.hs
+++ b/Lifespan/World.hs
@@ -1,6 +1,7 @@
 module World where
 
 import Graphics.Gloss
+import Graphics.Gloss.Interface.Simulate
 import System.Random
 import Community
 import Cell
diff --git a/Occlusion/Main.hs b/Occlusion/Main.hs
--- a/Occlusion/Main.hs
+++ b/Occlusion/Main.hs
@@ -4,10 +4,9 @@
 import Data
 import State
 import Cell
-import Graphics.Gloss.Game
+import Graphics.Gloss.Interface.Game
 import Graphics.Gloss.Data.QuadTree
 import Graphics.Gloss.Data.Extent
-import Graphics.Gloss.Shapes
 import System.Environment
 import Data.Maybe
 import Data.List
diff --git a/Occlusion/State.hs b/Occlusion/State.hs
--- a/Occlusion/State.hs
+++ b/Occlusion/State.hs
@@ -2,7 +2,7 @@
 
 module State where
 import World
-import Graphics.Gloss.Game
+import Graphics.Gloss.Interface.Game
 
 -- | The game state.
 data State
diff --git a/Occlusion/World.hs b/Occlusion/World.hs
--- a/Occlusion/World.hs
+++ b/Occlusion/World.hs
@@ -2,7 +2,7 @@
 
 module World where
 import Cell
-import Graphics.Gloss.Game
+import Graphics.Gloss.Interface.Game
 import Graphics.Gloss.Data.Extent
 import Graphics.Gloss.Data.QuadTree
 import Graphics.Gloss.Algorithms.RayCast
diff --git a/Styrene/Advance.hs b/Styrene/Advance.hs
--- a/Styrene/Advance.hs
+++ b/Styrene/Advance.hs
@@ -10,8 +10,9 @@
 import Config
 
 import Graphics.Gloss.Geometry
-import Graphics.Gloss.ViewPort
-import Graphics.Gloss.Picture	(Point)
+import Graphics.Gloss.Interface.Simulate
+import Graphics.Gloss.Data.Point
+import Graphics.Gloss.Data.Vector
 
 import Data.List
 import qualified Data.Map	as Map
diff --git a/Styrene/Collide.hs b/Styrene/Collide.hs
--- a/Styrene/Collide.hs
+++ b/Styrene/Collide.hs
@@ -2,7 +2,8 @@
 module Collide where
 import World
 import Actor
-import Graphics.Gloss.Picture	(Point)
+import Graphics.Gloss.Data.Point
+import Graphics.Gloss.Data.Vector
 import Graphics.Gloss.Geometry
 
 -- Config -----------------------------------------------------------------------------------------
diff --git a/Styrene/Contact.hs b/Styrene/Contact.hs
--- a/Styrene/Contact.hs
+++ b/Styrene/Contact.hs
@@ -1,11 +1,11 @@
-{-# OPTIONS -fglasgow-exts #-}
+{-# LANGUAGE MagicHash #-}
 
 -- | Find actors in the world that are in contact with each other.
 module Contact where
 import World
 import QuadTree
 import Actor
-import Graphics.Gloss.Picture		(Point)
+import Graphics.Gloss.Data.Point
 import Graphics.Gloss.Geometry.Line
 import Data.Maybe
 import Data.List
diff --git a/Styrene/Main.hs b/Styrene/Main.hs
--- a/Styrene/Main.hs
+++ b/Styrene/Main.hs
@@ -9,7 +9,8 @@
 
 import Graphics.Gloss
 import Graphics.Gloss.Geometry
-import Graphics.Gloss.Shapes 
+import Graphics.Gloss.Interface.Simulate
+import Graphics.Gloss.Data.Vector
 
 import qualified Data.Map	as Map
 import Data.Map			(Map)
diff --git a/Styrene/QuadTree.hs b/Styrene/QuadTree.hs
--- a/Styrene/QuadTree.hs
+++ b/Styrene/QuadTree.hs
@@ -5,7 +5,7 @@
 	, treeInsert
 	, treeElems )
 where
-import Graphics.Gloss.Picture	(Point)
+import Graphics.Gloss.Data.Point
 
 data QuadTree a
 	-- Nil cells take up space in the world, but don't contain any elements.
diff --git a/Zen/Main.hs b/Zen/Main.hs
--- a/Zen/Main.hs
+++ b/Zen/Main.hs
@@ -2,7 +2,6 @@
 -- A nifty animated fractal of a tree, superimposed on a background 
 --	of three red rectangles.
 import Graphics.Gloss
-import Graphics.Gloss.Shapes
 
 main :: IO ()
 main 
diff --git a/gloss-examples.cabal b/gloss-examples.cabal
--- a/gloss-examples.cabal
+++ b/gloss-examples.cabal
@@ -1,9 +1,9 @@
 Name:                gloss-examples
-Version:             1.1.1.0
+Version:             1.2.0.0
 License:             MIT
 License-file:        LICENSE
 Author:              Ben Lippmeier
-Maintainer:          gloss@ouroborus.net
+Maintainer:          benl@ouroborus.net
 Build-Type:          Simple
 Cabal-Version:       >=1.6
 Stability:           experimental
@@ -20,21 +20,21 @@
 Executable gloss-easy
   Build-depends: 
         base            == 4.*,
-        gloss           == 1.1.*
+        gloss           == 1.2.*
   Main-is: Easy/Main.hs
   ghc-options: -O2
 
 Executable gloss-clock
   Build-depends: 
         base            == 4.*,
-        gloss           == 1.1.*
+        gloss           == 1.2.*
   Main-is: Clock/Main.hs
   ghc-options: -O2
 
 Executable gloss-eden
   Build-depends: 
         base            == 4.*,
-        gloss           == 1.1.*,
+        gloss           == 1.2.*,
         random          == 1.0.*
   Main-is: Main.hs
   other-modules: Cell Community World
@@ -44,21 +44,21 @@
 Executable gloss-flake
   Build-depends:
         base            == 4.*,
-        gloss           == 1.1.*
+        gloss           == 1.2.*
   Main-is: Flake/Main.hs
   ghc-options: -O2
 
 Executable gloss-hello
   Build-depends: 
         base            == 4.*, 
-        gloss           == 1.1.*
+        gloss           == 1.2.*
   Main-is: Hello/Main.hs
   ghc-options: -O2
 
 Executable gloss-lifespan
   Build-depends: 
         base            == 4.*, 
-        gloss           == 1.1.*, 
+        gloss           == 1.2.*, 
         random          == 1.0.*
   Main-is: Main.hs
   other-modules: Cell Community World
@@ -68,7 +68,7 @@
 Executable gloss-styrene
   Build-depends: 
         base            == 4.*,
-        gloss           == 1.1.*,
+        gloss           == 1.2.*,
         containers      == 0.3.*,
         ghc-prim        == 0.2.*
   Main-is: Main.hs
@@ -79,29 +79,29 @@
 Executable gloss-tree
   Build-depends: 
         base            == 4.*, 
-        gloss           == 1.1.*
+        gloss           == 1.2.*
   Main-is: Tree/Main.hs
   ghc-options: -O2
 
 Executable gloss-zen
   Build-depends: 
         base            == 4.*, 
-        gloss           == 1.1.*
+        gloss           == 1.2.*
   Main-is: Zen/Main.hs
   ghc-options: -O2
 
 Executable gloss-machina
   Build-depends: 
         base            == 4.*, 
-        gloss           == 1.1.*
+        gloss           == 1.2.*
   Main-is: Machina/Main.hs
   ghc-options: -O2
 
 Executable gloss-conway
   Build-depends: 
         base            == 4.*,
-        gloss           == 1.1.*,
-        vector          >= 0.5 && < 0.7
+        gloss           == 1.2.*,
+        vector          >= 0.5 && < 0.8
   Main-is: Main.hs
   other-modules: Cell World
   hs-source-dirs: Conway
@@ -110,7 +110,7 @@
 Executable gloss-occlusion
   Build-depends: 
         base            == 4.*, 
-        gloss           == 1.1.*
+        gloss           == 1.2.*
   Main-is: Main.hs
   other-modules: Cell World State Data
   hs-source-dirs: Occlusion
