# Course:CPSC312-2018-Daedalus

## Daedalus

#### Author: Ben Walker

### What is the problem?

**Maze generation**

I will use a depth-first traversal of a matrix of nodes to generate an *n x m* maze - and then will display it as a png.

### What is the something extra?

**Maze solving**

I will use backtracking search to find a solution to a given maze - and then display the solution superimposed on the original maze as a png.

### What did I learn from doing this?

- developing my own ADTs in Haskell
- the Haskell Graphics library
- custom datatypes and typeclasses
- using stack, a Haskell application build tool
- implementation of well-known algorithms in purely functional form in Haskell

I would like to improve what I currently have by making optimizations and perhaps employing parallelism to give the program a speed boost. I would also like to try different maze generation/solving algorithms to make comparisons with the currently implemented.