CSC 308 -- PROGRAMMING LANGUAGES -- COURSE PROJECT


One of the requirements of this course is that you prepare a research paper on a topic from the general area of programming languages. The paper will determine 20% of your final grade for the course. It is due in my hands by May 6th, 1999. There is no such thing as a late date; papers received after 5:00PM on May 6th will not be accepted.


Here are some thoughts concerning the preparation of your paper:

  1. Your paper will deal with a subject germane to this course. Several suggestions have been included below. You should talk to me sometime during the first two weeks of the semester (the date will be announced) so that we can agree on your topic.

  2. You will hand in to me, on January 14th, 1999, a one-page abstract indicating what your paper will be about. This should include a brief discussion of the topic you have chosen, something about how you are approaching the subject.

  3. Your paper will be presented in a professional manner. In particular, it will be typed or printed on a computer printer. (Dot matrix is acceptable.) Please be sure to root out all typographical, spelling, and grammatical errors!!!!!

  4. You should endeavor to find a sufficient number of relevant sources of sound academic quality for your research. You absolutely must give credit where credit is due. It is not considered cricket to take credit for material you have borrowed from others. This will lead to severe academic penalties. I don't care whether you use footnotes or endnotes, but give the citations. In either case, you will want to include a bibliography of all sources consulted in your research for the paper.

  5. The layout of the paper is more or less up to you. It is usually considered good form to divide a longer paper into sections, to number pages, to double space, and to provide a table of contents. The length of the paper is determined by many factors, but I suspect you will not be able to do an honest treatment of a topic with some substance in less than nine or ten pages of text. Please feel free to write as much as may be necessary to make your case, but don't pad. Thirty-five pages of drivel is just that, drivel. I do not grade by the pound. It is possible to write a 35 page paper and have it assigned the grade of F.

  6. While I value your opinions, I am concerned that you also discover and analyze the thoughts of other experts in the field. Please do not present me with a long essay that simply describes your feelings about the topic. Do some digging, find out what the experts have to say, and then digest and analyze their thoughts. Let me know what the current thought is on a subject -- often there will be more than one view, as is the case of the development of Java (there's a topic for you). Your own analysis of these ideas and the conclusions you base on them is the heart of the work.

Listed below are some possible areas of investigation for your research paper. This list is not intended to be exhaustive, only suggestive. If you have other ideas about what you might like to do, please feel free to pursue them, subject to your discussion with me.


A) The historical development of a specific programming language


B) Case study type description of a particular programming language
C) ANSI standards
D) The extent to which languages are machine dependent
E) Various topics in natural language processing
F) A comparative study of two or more languages
G) For the venturesome, a look into the future of programming languages