Undergraduate Course: Advances in Programming Languages (INFR11101)
Course Outline
School | School of Informatics |
College | College of Science and Engineering |
Course type | Standard |
Availability | Available to all students |
Credit level (Normal year taken) | SCQF Level 11 (Year 4 Undergraduate) |
Credits | 10 |
Home subject area | Informatics |
Other subject area | None |
Course website |
http://course.inf.ed.ac.uk/apl/ |
Taught in Gaelic? | No |
Course description | This course will survey recent developments in programming language design and implementation with an emphasis on those developments which are technological advances on the state-of-the-art. |
Entry Requirements (not applicable to Visiting Students)
Pre-requisites |
|
Co-requisites | |
Prohibited Combinations | |
Other requirements | Familiarity with at least one object-oriented imperative language and one functional programming language. For students taking undergraduate degrees in the School of Informatics, these will usually be Java and Haskell, respectively. |
Additional Costs | None |
Information for Visiting Students
Pre-requisites | Visiting students are required to have comparable background to that
assumed by the course prerequisites listed in the Degree Regulations &
Programmes of Study. If in doubt, consult the course lecturer. |
Displayed in Visiting Students Prospectus? | Yes |
Course Delivery Information
|
Delivery period: 2014/15 Semester 1, Available to all students (SV1)
|
Learn enabled: No |
Quota: None |
|
Web Timetable |
Web Timetable |
Course Start Date |
15/09/2014 |
Breakdown of Learning and Teaching activities (Further Info) |
Total Hours:
100
(
Lecture Hours 18,
Feedback/Feedforward Hours 2,
Summative Assessment Hours 2,
Programme Level Learning and Teaching Hours 2,
Directed Learning and Independent Learning Hours
76 )
|
Additional Notes |
|
Breakdown of Assessment Methods (Further Info) |
Written Exam
80 %,
Coursework
20 %,
Practical Exam
0 %
|
Exam Information |
Exam Diet |
Paper Name |
Hours & Minutes |
|
Main Exam Diet S2 (April/May) | | 2:00 | |
|
Delivery period: 2014/15 Semester 1, Part-year visiting students only (VV1)
|
Learn enabled: No |
Quota: None |
|
Web Timetable |
Web Timetable |
Course Start Date |
15/09/2014 |
Breakdown of Learning and Teaching activities (Further Info) |
Total Hours:
100
(
Lecture Hours 20,
Programme Level Learning and Teaching Hours 2,
Directed Learning and Independent Learning Hours
78 )
|
Additional Notes |
|
Breakdown of Assessment Methods (Further Info) |
Written Exam
80 %,
Coursework
20 %,
Practical Exam
0 %
|
Exam Information |
Exam Diet |
Paper Name |
Hours & Minutes |
|
Main Exam Diet S1 (December) | | 2:00 | |
Summary of Intended Learning Outcomes
A student who has successfully completed this course should be able to:
1 - Give examples of different programming idioms, other than the imperative class-based object-oriented model which is familiar from Java.
2 - Explain distinctive features of programming idioms, illustrating some relative advantages and disadvantages.
3 - Describe requirements and constraints in the design of programming languages and individual language features.
4 - Outline some of the problems arising from feature interaction in programming languages.
5 - For a range of programming language features, identify the problem they were created to solve, explain the approach they take to do this, and discuss possible problems that may arise.
6 - Describe in depth a specific recent programming language innovation, explaining its motivation, implementation, and how it compares to previous approaches.
7 - Write working code that demonstrates the use of a novel language feature, based on technical research papers and language documentation. |
Assessment Information
Assessment
A written examination will assess outcomes 1-5. The remaining outcomes will be assessed through a single piece of coursework, completed in two stages. This will involve some software development and the writing of a report.
Feedback
The course lecturer will provide written feedback on both stages of the course-work assignment. The first stage is purely formative: it does not count towards the course grade, and the feedback is to help improve students' work during the final stage.
The final lecture of the course reviews student progress during the course, giving feedback and advice on how best to prepare for the examination.
Visiting Students
If delivered in Semester 1, this course will have an option for single-semester visiting undergraduate students that provides assessment prior to the end ofthe calendar year.
|
Special Arrangements
None |
Additional Information
Academic description |
Not entered |
Syllabus |
* The aims of language design: correctness, uniformity, practicality
* Advanced programming language constructs: overview and motivation
* Specific examples of programming language approaches to different problem domains, generally four or five drawn from areas such as:
Concurrency, memory management, security, distribution, parallelism,
verification, correctness, types, objects, classes, language interworking,
polymorphism, generics, naming, and modularity.
Relevant QAA Computing Curriculum Sections: Comparative Programming Languages, Compilers and Syntax Directed Tools, Theoretical Computing |
Transferable skills |
Not entered |
Reading list |
Reading material will include selected technical papers on the languages featured in the course. There is no nominated textbook for the course. |
Study Abroad |
Not entered |
Study Pattern |
Not entered |
Keywords | Not entered |
Contacts
Course organiser | Dr Mary Cryan
Tel: (0131 6)50 5153
Email: mcryan@inf.ed.ac.uk |
Course secretary | |
|
© Copyright 2014 The University of Edinburgh - 29 August 2014 4:12 am
|