Assignment 5


This week’s homework is to complete an implementation of Harold the Robot. The starter code can be found here. Note that since some additional configuration is required to enable the packages used, you should clone the harold folder directly rather than just the source code in src.

The homework is simply to complete the functions which are marked incomplete in the starter code. Modifications should be made to Harold.hs and Main.hs, while World.hs provides the types and functions required to create the World that Harold lives in. Main.hs can be run either by running main in ghci or by building and executing the project. After implementing the required functions, Harold should place a beeper (represented by an x) at each corner of his world.

As with the last assignment, this is meant primarily as an exercise in reading and understanding Haskell. The code that needs to be written is quite short.

Submission instructions

Send an email to with either: