CS 111 - Introduction to Computer Science
Homework #1


Due: Friday 1/26 at the beginning of class

NOTE: Please carefully read the direction for submitting homework.  Homework that does not compile or is not submitted according to instructions may receive no credit. 

For each assignment, you should submit not only the requested program files, but also a simple text file called README.  README files are often used by programmers to comment on the contents of a directory or give vital information.  Please make sure this plain text file is named "README", not "README.txt", "readme", "ReadMe.txt", "read me.doc", etc.  For each assignment, your README file will contain:

  1. Read Chapter 1.
  2. Do the bash tutorial ("Getting started with bash at Gettysburg" on the Account Resources Page).  Do the tutorial in one sitting so that you'll be able to submit a transcript of your shell commands.
  3. Do the emacs/JDE tutorial ("Getting started with emacs and JDE at Gettysburg" on the Account Resources Page). Submit your Hello.java.  You will use bash and JDE for all of your programming this semester.  The more you know of your work environment, the more efficient you will be.  A little time spent above and beyond these tutorials will likely pay off significantly in the long run as a CS major/minor.
  4. In your own words, define the terms:
    1. compiler
    2. interpreter
    3. Java Virtual Machine (JVM)
  5. What do the commands "java" and "javac" have to do with the previous terms?
  6. In your own words, describe these errors.  When is each type of error encountered in the programming process (e.g. editing stage, compilation stage, execution stage, etc.)?
    1. syntax error
    2. logic error