wumpus-basic-0.6.0: Common drawing utilities built on wumpus-core.

PortabilityGHC
Stabilityunstable
Maintainerstephen.tetley@gmail.com

Wumpus.Basic.Monads.TurtleMonad

Description

Turtle monad and monad transformer.

The Turtle monad embodies the LOGO style of imperative drawing - sending commands to update the a cursor.

While Wumpus generally aims for a more compositional, "coordinate-free" style of drawing, some types of diagram are more easily expressed in the LOGO style.

Documentation

data Turtle u a Source

data TurtleT u m a Source

Instances

Monad m => Monad (TurtleT u m) 
Monad m => Functor (TurtleT u m) 
Monad m => Applicative (TurtleT u m) 
Monad m => TurtleM (TurtleT u m) 
DrawingCtxM m => DrawingCtxM (TurtleT u m) 
Monad m => TurtleScaleM (TurtleT u m) u 
(Monad m, TraceM m i) => TraceM (TurtleT u m) i 

runTurtle :: Num u => TurtleConfig u -> (Int, Int) -> Turtle u a -> aSource

runTurtleT :: (Monad m, Num u) => TurtleConfig u -> (Int, Int) -> TurtleT u m a -> m aSource