Advances in Programming Languages


Note: This page refers to a past version of the course. You can also consult the current APL course web pages.

Course webpage. Jump to: timing and submission, suggested outline, required elements, notes on plagiarism.


There is a single piece of assessed coursework, a written report on one of the following topics:

Further information on these topics appeared in Lecture 4.

Preparing the report will involve reading research papers, technical manuals, and some code development on the system in question. See below for information on the expected content of your report.

Timing and Format

News: Informatics coursework deadlines have been modified to take account of the repeated closure of Appleton Tower. Accordingly, the due date for your APL report is now 2008-03-13 24:00Z, four working days later than originally set.

Link: Appleton Tower closures

Week 3 Monday 21 January: Assignment set

Week 4 Friday 1 February: Choose topic

Submit a file choice.txt containing the following:

  • Which topic title you have chosen
  • Three suitable references

One reference must be to a published paper; the other two may be published articles, but could also be white papers, web tutorials, manuals, or similar. In all cases you must provide suitable information that would enable someone else to obtain the document.

Submit your file using the command submit cs4 apl 1 choice.txt by 2008-02-01 24:00Z.

Week 9 Friday 7 March: Report due

Submit a file apl.pdf containing your report in PDF. No other format will be accepted.

Submit your file using the command submit cs4 apl 2 apl.pdf by 2008-03-13 24:00Z (revised date).

There are 7 weeks to complete the coursework. This is not because it is likely to take that long: the period is to allow you to arrange and plan work across all the courses you are taking. If you have a course with a similar deadline which you feel may cause difficulties, then you might aim to complete the APL report a week or more before the deadline.

The recommended tool for creating the report is LaTeX with the article class, using pdflatex. You may find the listings package useful.

In addition, is freely available for Windows and Linux, installed on Informatics machines, and can write PDF. Mac OS X natively creates PDF. Microsoft provide a PDF output add-in for Word 2007. For earlier versions of Word, you must either purchase a reliable PDF converter, or just transfer your files to OpenOffice, which reads Microsoft formats (RTF or DOC), and then output to PDF from there.

Report Outline

The report must be 8–10 pages long and self-contained. Pages should be A4 size, numbered from 1, and use 11 or 12 point serif body text. No cover sheet is required: the title and abstract should appear on the first page with the body text.

The following is an example report outline. You need not follow this to the letter: it is intended only as a guide. In particular, notice that it does not include a full literature survey, as would be normal for a more substantive piece of research.

Certain elements, however, are required: see below for details.

Title / Date / Author


An appropriate abstract for a report like this might read:

X is a problem/challenge/issue, Y is a proposed solution/approach/technique. This report describes how this has been used in project/language Z, showing how it works, detailing some of the advantages and limitations, and with an example of Y as applied to W.

A summary of your report, which could be read separately. Overview of report structure.


The problem domain, why it is a challenge, some illustration of the difficulties present.

<Proposed solution>

What is the proposed solution. How the language or project at hand applies this solution. Sprinkle with small illustrations of how this works. Advantages, what is gained. Limitations, why it might be tricky to use, things that are still not solved


Brief description of example. Code, with annotations and more detailed description. A sample screenshot of this in action: code+compilation+execution. (Use the LaTeX graphics package to include images.)


A list of a few notable resources, such as: technical paper, conference paper, journal article, web tutorial, manual, demonstration video. For each such resource, a paragraph or two summarising what it contains, in your own words.

Related work

Other projects or languages applying the same technique. Other approaches to the same problem. For each of these, say what it does and how it compares.


What the approach described does; summary of its advantages and limitations.


For every item of source material used, give a full bibliographic reference. This must be sufficient for a reader to obtain and consult the original document. In particular, a URL on its own is not enough; unless the resource is itself a web site, in which case it should be accompanied by the date on which it was fetched.

Required Elements

The following specific elements of the report are essential:

Other elements listed in the sample outline above are more flexible, within reason, where you feel this better supports the specific topic of your investigation.


The text of your report must be your own unaided work, written in your own words. See the following:

The following working practices may be helpful.

This does not by any means bar discussion with other students; simply that the text of the report itself must be your own work, not written in collaboration with anyone else.

Home : Teaching : Courses : Apl : 2007-2008 

Informatics Forum, 10 Crichton Street, Edinburgh, EH8 9AB, Scotland, UK
Tel: +44 131 651 5661, Fax: +44 131 651 1426, E-mail:
Please contact our webadmin with any comments or corrections. Logging and Cookies
Unless explicitly stated otherwise, all material is copyright © The University of Edinburgh