Diagnostician

From UBC Wiki

What is the problem?

We will attempt to create a functional logic database whose input is a list of symptoms and output is a possible diagnosis.

What is the something extra?

It would be cool if the program could ask follow-up questions to narrow down the diagnosis. Alternatively, It would be nice if the program still gave a diagnosis, or several diagnoses, even if the diagnosis does not perfectly match the symptoms given.

What will we learn?

Logic, parsing input strings, database structure.

Link to code:

https://github.com/ilias-karimalis/MarkovMusic/blob/armandas/diag.pl