CS655: Programming Languages, Spring 2001 |
Manifest: Thursday 22 February 2001
Assignments Today Problem Set 2 out Tuesday Problem Set 3 (involves writing English, not Scheme) Readings Read at before class Tuesday:
As you read the Algol 60 report, think about the following questions:
- Peter Nauer, et. al. Report on the Algorithmic Language Algol 60, Communications of the ACM, 1963.
- Donald E. Knuth. The Remaining Troublespots in Algol 60, Communications of the ACM, 1967.
- How is this different from the Revised Report on Scheme? Consider both the structure and style of the report and its contents. Why is the Algol60 report so much shorter given that Algol60 is a bigger language?
- What were the design requirements faced by the Algol60 Committee? How well did they satisfy them?
- What kinds of programs could be written easily in Algol60? What kind of programs would it be difficulty to write?
- Which features of Algol60 are present unchanged in Algol-derivative languages you use today? (e.g., C++, Java)
- Which features of Algol60 are present by have changed significantly in Algol-derivative languages you use today?
- Which features of Algol60 are not supported by Algol-derivative languages you use today? (Why do you think they have disappeared?)
Links If you were bothered by the sexist language in Guy Steele's Growing a Language, read Douglas Hofstadter's A Person Paper on Purity in Language.
If you weren't bothered by the sexist language in Guy Steele's Growing a Language, read Douglas Hofstadter's A Person Paper on Purity in Language.
If you didn't read Guy Steele's Growing a Language, you probably should now (and then select from options one and two).
Applicants must also have extensive knowledge of Unix, although they should have sufficiently good programming taste to not consider this an achievement.
Hal Abelson, MIT job advertisement
University of Virginia Department of Computer Science CS 655: Programming Languages |
David Evans evans@virginia.edu |