15292 History of Computing

History of Computing




TERM PAPER (hardcopy and electronic): due Friday, February 24, 2017 by 10:30AM

Click HERE to see what language you were assigned to cover!


In 1978, the Association for Computing Machinery (ACM) held a conference for the History of Programming Languages (HOPL) in conjunction with its Special Interest Group for Programming Languages (SIGPLAN). At the conference, speakers presented papers about 13 programming languages. A follow-up conference in 1993 covered 14 programming languages. Most recently, a third conference in 2007 covered 12 programming languages.


In this term paper assignment, you will be assigned to research the history of a famous or significant programming language, many of which were discussed at these conferences. Each student will be assigned a different programming language, at random, during class on Friday, February 3.

Write a 3-5 page term paper that discusses the origins of the language, who created it and for what purpose, its acceptance and use in the computing community, how it changed over time, and how it influenced languages that followed. Although your paper may use programming examples from the language, your paper should not be a tutorial on how to program in your assigned language. Instead, you should present the history of the programming language in a clearly written manner.

In researching your topic, you should read and reference the relevant paper(s) from the HOPL conferences (if applicable) in addition to references found online and in print. The HOPL papers are available from the ACM Digital Library which is accessible from the Web on campus. Go to


click on one of the images to find the conference that discussed your language, and then under LINKS, click on Conference Proceedings.


Besides the paper(s) given at the HOPL conferences (if available), you must have at least 4 additional sources of information for your paper. Of course, you may use more, so if you find additional resources, don't limit yourself to 4 just to get by. You should be able to find many sources online and in print. Check the CMU library for older books on the programming languages to see if they shed any light on the history of the language and/or its creator(s).

Although you may read about the programming language in Wikipedia, you may NOT use anything from Wikipedia in your term paper. You may NOT quote or use Wikipedia articles as references. You may follow the references from Wikipedia to sources of information online and in print to get more information about your assigned language that you may use in your paper. You may only cite sources that can be attributed to one or more identifiable authors. Be careful not to quote from blogs or other social sites unless you can verify the author and his or her expertise with respect to the history of the programming language. Be careful when you search for material online. You MUST be certain as to the author(s) of the material that is written and the correctness of the material posted. (Just because it's on the web does not mean it's true.)

When citing references, use the Chicago Manual of Style available here:


On this page, click on the Author-Date tab to see various examples of references. The online guide has more detailed information for specific types of references, including web pages. For help formatting your references, you can visit


and click on the type of the reference source to enter your source information. You will then get the properly formatted reference based on the Chicago Manual of Style. Note that this is the reference you list at the end of your paper.

In the paper itself, you should refer to the reference using the abbreviated Author-Date style. (Turing, 1936) If several sentences or a paragraph all refer to information from the same source, you can use the abbreviated reference at the end of the section or paragraph. You don't need to reference every single sentence. Your paper should not be an entire collection of quotes and references. You are expected to connect the information with your own thoughts, observations and segues to tell the story of the programming language you are assigned.


Your paper should be double-spaced with a 1 inch margin on all sides, using a minimum of 10 point font and a maximum of 12 point font in Times-Roman or Arial/Helvetica typeface. If you include photographs, programs, figures, diagrams or tables, these will not count toward the total of 3-5 pages. Additionally, very large indented quotations will also not count toward the required page total. References should be made briefly in the text (Turing, 1936) with a full list of references at the end of the paper. The list of references does not count toward the paper length.

Your term paper should have a title page that lists the title of the paper (e.g. The History of the C0 Programming Language) along with your name and the date. This title page does not count toward the paper length.

All material in your paper that is not your own words or drawing/photos/etc. should be cited. Exact quotations must be shown as quoted text, identifying the source of the quotation.

We recommend that you spend the first week researching your programming language, gathering the papers and sources you need, then spend the second week writing a rough draft of the paper, and then spend the final days polishing the rough draft into the final version of the paper.

The final term paper must be submitted in two ways by Friday, February 24: a stapled hard copy will be handed in at the start of class, and an electronic version will be handed in via Autolab. Please be aware that your work will be checked using online resources including TurnItIn to check for plagiarism. The work you submit must be your own, with quotations, paraphrasing, pictures, diagrams, tables and material from other authors cited appropriately.

SPEAKING REQUIREMENT - Friday, February 24

On the Friday the term paper is due, you will be expected to be in class to briefly represent the programming language you were assigned. The lecture for that day is on the history of programming languages, and as we get to each language, the student responsible for the term paper for that language will speak informally for a MAXIMUM OF 2 MINUTES to highlight to the class its historical points (no slides or presentation materials are allowed).


This assignment is worth 10% toward your final grade. You will be graded based on the following points:

If you have any questions about the assignment or concerns about using proper citations, please ask your instructor or teaching assistant. Evidence of plagiarism will result in a charge of academic dishonesty which includes an immediate grade of R in this class and a letter to the Dean of Student Affairs to review this case for possible suspension or expulsion from Carnegie Mellon University.