What topics are covered in PAC?
The fall semester addresses “high-level” problem solving on the computer, using the programming language ‘Ada’ as a means to implement solution strategies. Topics in the first semester include data typing, program organization (subprograms and packages), and data structures (arrays, records, pointers, linked lists, binary trees). Generally the first half of the semester focuses on learning the fundamentals, while the second half emphasizes the application of these skills in the development of abstract data types, reusable packages, and modular software development techniques. The spring semester addresses “low-level” problem solving on the computer. Here we “peel back” the abstractions and investigate the underlying machine. We learn assembly language for the Intel x86 chips, and along the way investigate how information is stored and manipulated internally. We also study the ‘C’ language. ‘C’ is often described as “a high-level low-level language” (or vice-versa), as it is a high-leve