CSci 170: Analysis of Programming Languages

Assignment 1

On chapter 1, the role of programming languages. Answer each of the following questions in a sentence or two. Due next meeting.
  1. Explain the difference between a high-level language and a low-level language. Give an example of each.
  2. What is the difference between machine language and assembly language?
  3. High-level languages are supposed to be machine independent. What does that mean? Why can't low-level languages be machine independent?
  4. Some high-level languages are more machine independent than others. Java, for instance, is more machine independent than C. Explain how that can be.
  5. Explain the difference between a syntax error and a run-time error.
  6. We all want our programs to be bug-free. What kind of bugs can compilers find for us?
  7. Some languages are compiled while others are interpreted. What is the difference? Where does Java fit in?
  8. Some languages are "functional programming languages." Java is not one of them. Why not? (You'll have to look ahead to get a better characterization of functional programming lanugages than what's in the first chapter to answer this question.)