Outline for March 30, 2009

Reading: §1.1–1.5


  1. About the class
    1. Instructors and TAs
    2. Handouts
    3. Grading and extra credit
  2. What is a computer?
    1. Computer programs
    2. Execution
  3. Software and hardware
    1. Functional description of a computer
    2. How the software controls the hardware
    3. How the hardware limits the software
  4. Algorithms
    1. Precision and completeness
    2. What is computable
    3. What is intractable
  5. Programming languages
    1. High-level languages: semantics and syntax
    2. Low-level languages: assembly language, machine language
    3. Compilers, assemblers, interpreters
    4. Source code, object code
    5. Libraries
  6. Python
    1. What is Python?
    2. Why Python for this class?