Com S 342 --- Principles of Programming Languages HOMEWORK 0: GETTING STARTED (File $Date: 2004/01/13 16:42:51 $) Due: problems 1-2, 5, 8 at beginning of class January 15, 2004; problems 10-12 at beginning of class January 22, 2004. In this homework, you will get around a bit on the Com S department machines, send us vital information about your e-mail address, learn how to run Scheme, and learn learn some basic terms and ideas about programming language design, For code hand in *both* your printout of the code and a transcript of testing; handwritten code is *never* acceptable unless the problem specifically states otherwise. The section headings below give the readings related to the problems. COURSE GRADING POLICIES AND PROCEDURES (HANDOUT AND WEB PAGE) 1. (10 points) You need to have an account on the departmental Unix machines. From this account (just to prove you have it), send email to cs342s@cs.iastate.edu with the subject "HW0, my information" Put in the body of the message the following information: your family name, your given name, the last 4 digits of your University ID number, your email address, and your local phone number). (Your local phone number is optional; we won't let Anyone see it except the course staff, but it may help us contact you.) The format should look like the following: Family Name Given Name Last 4 of ID login Phone Leavens, Gary, 3456, leavens@cs.iastate.edu, 294-1580 (Including the commas will help us put this in a grading spreadsheet.) We will use this information for grading reports, class lists, and as a means to contact you. After this information write a list of the languages that you have programmed with previously. Use a format like the following example, but change the list to match your actual experience. I have programmed in: APL, Ada, Algol W, AspectJ, Awk, BASIC, C, C++, CLU, COBOL, Cecil, FORTRAN, Haskell, Java, Lisp, lambda Prolog, OBJ3, PL/1, Pascal, Perl, Prolog, SML, SNOBOL, SR, Scheme, Smalltalk, IBM 360 Assembly language, DEC VAX Assembly Language. We will use your list to help us plan the course better, and to tie the course material to your previous experience. Please omit any language you would not feel comfortable programming in. 2. (24 points) This problem is about the course directory and the course web site. Write brief answers to the following questions on a piece of paper and hand them in. a. On the department Unix machines, change to the directory /home/course/cs342/public. What are the names of the directories in /home/course/cs342/public? b. In your favorite Web browser, bring up the web page for the course, http://www.cs.iastate.edu/~cs342/index.shtml. From the a "Contacting Us" page, what are the office hours for your instructor? c. Who are the teaching assistants, and what are their office hours? d. Look at the "Grading Policies" page. How much is each test worth as a percentage of your grade? e. What percentage of your final grade is determined by homeworks? If homeworks are worth so little, why should you do them? f. Supposes seven problems are due at the beginning of lecture on Monday, and you have finished six of them. Should you wait until the seventh is done to hand the other six in? g. What is the penalty for handing in a home or problem by noon of the next day? h. How do extra credit problems fit into your final grade? i. If you e-mail program code to a friend who turns it in, are you cheating also? j. How is extra credit work used in grading? k. How should extra credit homework problems be turned in? l. What's on the "Q & A" web page? The rest of this homework is found in the file /home/course/cs342/public/homework/hw0.txt You should work on-line from this file. (You can access it from the course web page also.) You might want to print a copy if you'd rather have it in front of you.