Course:CPSC312-2024/ProloggingBee

From UBC Wiki

Authors: Adrian, Dan Andrew

What is the problem?

That there isn't Spelling Bee but in Prolog bruh!

Our goal is to emulate the NYTimes game Spelling Bee using Prolog. A quick summary of the game is that it is a game where you guess words from some given letters. You are given 7 letters, one of which is a special letter that must be used for all guesses.

What is the something extra?

Tthe something extra we implemented for ProloggingBee is a colourful UI to better allow players to interpret the results of their answers and overall enjoy a better experience while playing. In addition, we will be presenting a UI to the user that allows them to view their past guesses and achieve different rankings. Each ranking will be based on the percentage of words the player has guessed over all the words that can be guessed.

What did we learn from doing this?

With Prolog we learned the value of iterative testing and programming to avoid issues with bugs that emerge after writing large swaths of code without testing. We also learned how with program flow, you need to overload functions in order to have them behave differently depending on input -- it is like writing multiple atomic functions instead of writing one function to handle all behavior. We also learned how to avoid Prolog re-doing predicates by using cuts and the 'once' predicate in cases where it did not make sense such as input handling.

Work division

All 3 of us worked synergistically on our project, using VS Code LiveShare to trio program the project. The work was split evenly.

Links to code etc.

https://github.com/Adrian587/ProloggingBee