$30
Specifications
1. Complete the three simple smiley faces (start-up document).
2. Write four different Postscript programs that draw pictures.
a. a business card (elegant, with more than just your name and phone number)
b. a CS data structure or similar (array, list, tree, Turing machine diagram, other) with some data (e.g., ints) and words (e.g., “head”)
c. a geometric form, possibly recursive (spirals, Serpinski triangles, multiple overlapping rectangles in different colors, etc.)
d. your choice, no constraints, something fancier that uses many PostScript capabilities
3. Each picture should fill one page, except that the business card may be a card’s regular size.
4. All pictures should include your name (created by the Postscript program). You can also use text to put labels on parts of your pictures.
5. Use color on at least two of your programs. Use at least one transformation: translate and/or rotate and/or scale; and use graphics save and restore at least once; all these should be non-trivial
6. Programs should be well documented to help a reader understand the code. You do not need to explain each Postscript function you use, but you may annotate them if you wish, for your own future reference.
7. Cover letter. The usual contents plus short answers to these questions:
a. What development and execution environment(s) did you use?
b. What was easiest about learning and using Postscript?
c. What was hardest about learning and using Postscript?
Explain your process for learning this new language. What did you do after the introduction in class? How much more code reading time did you put in? What other sample code did you run or write? How did you decide what you needed to do to learn the language better as you went along?
e. What did you find interesting, powerful, quirky, etc., about the language and programming in it?
f. For each picture, state the required (above) Postscript capabilities you used (e.g., “save and restore”).
g. Any other particulars on specific pictures (clever things you did, alternatives you tried, etc.)?
h. Any other comments on the language (as a new user and/or student in CS 3210)?