Changelog of @hackage/worldturtle 0.3.0.0

Changelog for turtle-haskell

v0.3.0.0

  • Upgraded to lts-18.27.
  • Added runWorld' and runTurtle' variant commands which take a background color.
  • Deprecated setPosition.
  • Added jump, which is a variant of goto which never draws a line.
  • Added wait command, which is a TurtleCommand variant of sleep.
  • Added label and label' commands, which allows text to be drawn at turtle's position.
  • Added repeatFor method which is an alias for Control.Monad.replicateM_ (this is purely to help ease students into Monad concepts.)
  • TurtleCommand and WorldCommand are now instances of MonadIO.
  • Major internal performance improvements. SequenceCommand, is now a Coroutine. This reduces wasted calculations per-frame as the state of the previous frame can now be carried into the next frame of animation.
  • Removed WorldCommand as an instance of Control.Applicative and MonadPlus. This did not make sense in terms of parallelization. Instead, WorldComamnd is now an instance of MonadParallel
  • Introduced new >!> operator for parallel animations.
  • setPenDown has been split into setPenDown and setPenUp to be more LOGO-like.
  • setVisible has been split into setVisible and setInvisible to be more LOGO-like.
  • Added the labelwait-exe test.
  • Updated examples to account for command changes.
  • Removed spaceleak-exe test.

v0.2.2.1

  • Upgrading upper bounds of the lens package to allow for compilation with GHC 9.0.1.
  • Regenerated .travis.yml to reflect new GHC supported version.

v0.2.2

  • Upgrading to GHC 8.10.3 to resolve problems GHC compiler problems with Mac OSX. See here for details.
  • Fixed issue where newly drawn lines were drawn under older lines.

v0.2.1

  • Internally simplified the commands system to use a Maybe Monad for sequencing.

v0.2.0

  • Split TurtleCommand into TurtleCommand and WorldCommand to help reduce boilerplate of having to apply a turtle to a command for every stage of a command block.
  • Added runWorld, runTurtle, run, and (>/>) functions.
  • circle command split into arc and circle commands.
  • Fixed shiftHue as function did not match documentation.

v0.1.2

  • Added the branch function.

v0.1.1

  • Added sleep function.
  • Added rotationSpeed function.
  • Added the shiftHue color function.
  • Fixed bugs in circle rendering when going in a clockwise direction.
  • Fixed the bounds and potential recursion pitfall in internal normalization functions.
  • If rotation left 270 degrees will not turn right 90 degrees and vice versa.

v0.1.0

Initial release.