Maze Generator

From UBC Wiki

What is the problem?

We will create a Maze Generator in Prolog that the player can solve.

What is the something extra?

To find out if a prolog program can be interactive.

What did we learn from doing this?

(This should be written after you have done the work.) What is the bottom-line? Is functional programming suitable for (part-of) the task? Make sure you include the evidence for your claims.

We learned that it is very difficult to implement using any native GUI because prolog does not have any graphical capabilities. All prolog GUI libraries are written in other languages like Java and C++. There was little no none documentation on how to use XPCE. It was also difficult to be able to implement a randomly generated maze and also have the player be able to interact with that maze. This is because it would require generating and modify the knowledge base with many retract and assert statements which would be too complex for the scope of this project. We decided to make a prebuilt maze that players can interact with instead.

We learned that prolog is not the most suitable language for an interactive program because prolog has low graphical capabilites and most people use prolog as back-end.

We learned more about dynamic programming in prolog and being able to assert and retract facts.

Links to code etc

https://github.com/clarchiu/Prolog-Maze