Course:CPSC312-2023/CPSC-Degree-Check

From UBC Wiki

Authors: Joel, Kenji

What is the problem?[edit | wikitext]

Out project will involve checking the graduation requirements of a UBC student's CPSC degree. The user will enter all their courses in a textfile, and then the program will check the various graduation requirements for a CPSC degree. Detailed explanation given in README file.

What is the something extra?[edit | wikitext]

We will give users the option to enter a CPSC course number, and a detailed description of that course will be scraped from the ubccsss webpage and printed out to the console. We will take advantage of Prolog's pattern matching to easily scrape the desired data.

What did we learn from doing this?[edit | wikitext]

Prolog can be a difficult language to work with due to its unique logic programming paradigm, which is very different from other programming languages.

Debugging was also a difficulty in this projects, especially when dealing with complex queries and http requests. Prolog does not have a traditional debugging environment like many other programming languages, so it often requires a lot of manual tracing and testing to identify issues. Since prolog is not a widely used language, it can often be hard to come across someone who has had the same issues as you.

However, working on this project was also a great learning experience. It helped us develop a deeper understanding of logic programming and how to approach complex problems in a unique way. It was a great opportunity to improve our debugging skills, and to think and build from a bottom-up manner.

Links to code etc.

https://github.com/klh1324/CPSC-Degree-Check