About: A sidequest is an optional, not graded, not evaluated in anyway exploration into a topic. Sometimes it is just cool to know what is out there in the world. Sidequests come with a little descritions, presentations, related resources, and a sample code or exercise you can try. Side quests are likely a good area for further independent studies, research project, thesis, etc.


Building a Debugger


We have learned how to use GDB in this course. However, GDB may not meet all of your needs or preferred workflow. For this side quest, you will build your own debugger by learning how to insert breakpoints into a program amongst other things.

Problem Statement

Build a new debugger as either a gui or command-line tool

Proposed Exercise

Implement everything from [1].

Proposed Evaluation

Come up with several interseting use cases for which your debugger can catch certain programming errors in a language like C.

Key Resources

(The first resource you should read)

Additional Resources