UMBC CMSC 331 Spring 2011
Principles of Programming Languages
Home · About · Schedule · HW · Exams · Notes · Code · Examples · Resources ·

Homework 1
Background

out: 2/2/2011, due by midnight 2/9

Preliminaries

  • Explore the course web site at http://www.cs.umbc.edu/331/spring11.
  • Make sure you have a unix account on the gl.umbc.edu machines.
  • You should have received a test email from me, via blackboard, Wednesday afternoon. If not, then something's not right. Fix it.

To do

  • Read chapters one and two in our text book on the history of programming languages.
  • View the video interview with programming language designer Guy Steele on programming languages (a transcript of the video is also there) and his short essay on Thoughts on Language Design from Dr. Dobbs Journal.
  • Read Paul Graham's short essay The Hundred-Year Language.
  • Write short answers to the following questions and submit it using the UMBC submit system on gl. Provide a single document that is either a pdf file (prefered) or a plain text file.
    1. Paul Graham made some predictions (now several years old) about what popular programming languages will be like in 2103. Of these, describe the ones you find most and least believable in a few paragaphs. (20 points)
    2. Describe three ideas that you found interesting, insightful or compelling in the Steele Interview and article and why you found them noteworthy. (20 points)
    3. Describe at least one idea or statement by Steele that you disagreed with, question or take issue with in some way. Be sure to say why you take issue with it. (20 points)
    4. Your roommate, Clare Codette, claims that it's no longer important to write efficient programs because hardware has become so fast and memory very cheap. Moreover, she claims, Moore's Law means that the trend will continue. In a paragraph or two, explain why you agree or disagree with her. (20 points)
    5. Of the languages you know, which has the best support for parallel programming? Which has the best support for user interface construction? Explain your choices. (20 points).

We will wait to enable the submit system until early February, just after the add/drop period.

Submit a single file containing your answers to questions one through five using the submit command on the gl system with course cs331 and project hw1. The format can be pdf, html or txt. Do not send Word files, either .doc or .docx. Please name the file hw1.xxx where xxx is an appropriate file extension for the document type (e.g., pdf, html or txt).

$ submitproj cs331
The following projects are defined for the cs331 class:
test     this is just for testing
hw1    Homework one

$ cd 331/hw1

$ ls
hw1.pdf

$ submit cs331 hw1 hw1.pdf
It seems you have already submitted a file named hw1.pdf.
Do you wish to overwrite? (y/n):
y
Submitting hw1.pdf...OK

$ submitls cs331 hw1
total 8
drwxr-xr-x 2 finin faculty 2048 Mar 23 20:16 .
drwxr-xr-x 47 finin faculty 2048 Mar 23 20:08 ..
-rw-r--r-- 1 finin faculty 3745 Mar 23 20:18 hw1.pdf