xturtle-0.0.5: src/Graphics/X11/TurtleState.hs
module Graphics.X11.TurtleState (
TurtleState(..),
initialTurtleState,
) where
data TurtleState = TurtleState {
turtleShape :: [(Double, Double)],
turtleSize :: Double,
turtlePos :: (Double, Double),
turtleDir :: Double,
turtlePenDown :: Bool,
turtleUndo :: Bool,
turtleUndoNum :: Int
} deriving Show
initialTurtleState :: TurtleState
initialTurtleState = TurtleState {
turtleShape = isUndefined "turtleShape",
turtleSize = isUndefined "turtleSize",
turtlePos = isUndefined "turtlePos",
turtleDir = isUndefined "turtleDir",
turtlePenDown = isUndefined "turtlePenDown",
turtleUndo = False,
turtleUndoNum = 1
}
isUndefined :: String -> a
isUndefined name = error $ name ++ " is undefined"