Programming Languages

Learn both the practical side and philosophical aspects of programming. Students learn multiple language structures and concepts, how languages interact, and how they are used to manage data structures. Building and understanding tools that are used for software is a focus, as are languages, computer programs—such as compilers—and operating systems.  If you love to build and understand how things work, programming languages could be the specialization for you.