Skip to content

A toy turtle graphics interpreter based on the Free monad, in PureScript, with HTML Canvas graphics support.

License

Notifications You must be signed in to change notification settings

epost/purescript-free-turtle

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PureScript Free Turtle interpreter

A simple Turtle graphics system implemented using a Free monad, intended for educational purposes. It comes with an interpreter that translates programs in the Turtle language to HTML canvas graphics.

img/two-stars.png

main :: Effect Context2D
main = CanvasInterpreter.render "turtleCanvas" do
  color Purple
  star

  forward 40.0
  left 100.0

  color Red
  star

star = do
  penDown
  right 144.0
  forward 100.0
  right 144.0
  forward 100.0
  right 144.0
  forward 100.0
  right 144.0
  forward 100.0
  right 144.0
  forward 100.0
  penUp

Usage

In your shell, type:

npm install
npm run build
npm run bundle

Then point your browser to ./html/index.html.

About

A toy turtle graphics interpreter based on the Free monad, in PureScript, with HTML Canvas graphics support.

Topics

Resources

License

Stars

Watchers

Forks