Assignment 1: Shapes
In this assignment, you will build a Haskell program that uses the CodeWorld API to draw colourful shapes on the screen, including lines, polygons, rectangles, circles, ellipses, and parallelograms.
Assignment 2: Cellular Automata
In this assignment, you will write code to explore some simple computational models called Cellular Automata. A Cellular Automaton is a grid of cells, and a rule that describes how cells change over discrete time steps. These can be used to (crudely) model all sorts of interesting things, like biological systems, electronics and liquids. The opening ten or so minutes of the Noita GDC talk show some clever effects built out of simple rules.
Assignment 3: Draughts
In this assignment, you will develop a software agent or AI bot that plays Draughts. We have implemented the rules of the game for you, but you will have to decide how best to play the game.
