CS 217: Programming Languages

Student Presentations

This is your chance to learn about the a specific language in somewhat more detail, and present it to the rest of the class in a 10 minute presentation. This means that you'll have to do so in pairs. Find a partner in the class to work with, and let me know who it will be. I'm happy to play matchmaker if you can't find a partner - let me know. You can both speak for five minutes, or you can choose one of you to speak and the other to be "assistant." The important thing is that both of your efforts go into preparing the presentation.

There are 32 people in the class: this means that there will be 16 talks. These should be on Mondays or Wednesdays. As soon as possible, pick a Monday or a Wednesday on which you'd like to give your talk, and e-mail me. I'll let you know if you've got it, and indicate on the course web page which dates are taken and which are still available.

Every pair should talk about a different programming language. Therefore, it's first-come, first-served; the first pair to write to me indicating that they wish to talk about a given programming language has got it. You should choose from one of the languages listed below, which I've chosen as 16 highly influential languages:

  1. FORTRAN: Michelle Phillips and John Messner
  2. ALGOL: Sebastian Celis and Justin Levandoski
  3. LISP & Scheme: Jeremy Carr and Ben Anderson
  4. COBOL: Ben Harrison and Erik Nerison
  5. APL
  6. SNOBOL: Hubert Cook and David Flynn
  7. SIMULA: Becky Hollis
  8. BASIC: Adam Hoel and Jesse Keller
  9. PL/I: Taylor Curtis and Eric Lantz
  10. Pascal: Josh Allen and Bob Hirai
  11. Smalltalk: Andrew Drummer and Aaron Green
  12. Ada: Beth Ashworth and Jonah Wallerstein
  13. Postscript: Dave Chesebro and Kate Nelson
  14. Perl: Matt Hansen and Hilde Schmitt
  15. Python: Ben Saks and Matt Strait
  16. C#: Tae Kim, Ike Phelps

The order that the languages appear in class should be roughly historical. If you want to speak about an old language, you should plan on doing it early in the term. If you want to speak about a recent language, you should plan on doing it late in the term.

You should cover the following information in your presentation:

The textbook website has a listing of languages and links that you might want to use as a starting point.

You should also prepare a handout for the class that is a reference card, or "cheat sheet," for the language itself. It should be no more than two sides of a sheet of paper, and should include the basics for someone who wants to get a flavor of what the language is like. Make sure to include your references on here as well.

I will be grading the reference cards and the presentations on content as well as presentation. Keep in mind that the talk is only 10 minutes - I will be grading on choosing an appropriate amount of material for such a short timeframe. Come by my office soon after your talk and I will give you feedback on how it went.

The first two presentations are crucial, as after they are done I will briefly discuss their ups and downs with the class. I promise to be tasteful in my comments! I will grade the first two presentations more leniently.