University Homepage
DRPS Homepage
DRPS Search
DRPS Contact
DRPS : Course Catalogue : School of Informatics : Informatics

Undergraduate Course: Informatics 1 - Functional Programming (INFR08013)

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 8 (Year 1 Undergraduate) Credits 10
Home subject area Informatics Other subject area None
Course website Taught in Gaelic? No
Course description An introduction to the concepts of programming, using a functional programming language. Students learn to solve small-scale problems succinctly and at an abstract level without being bogged down in details.
Entry Requirements
Pre-requisites Co-requisites Students MUST also take: Informatics 1 - Computation and Logic (INFR08012)
Prohibited Combinations Other requirements SCE H-grade Mathematics or equivalent is desirable.
Additional Costs None
Information for Visiting Students
Pre-requisites None
Displayed in Visiting Students Prospectus? Yes
Course Delivery Information
Delivery period: 2011/12 Semester 1, Available to all students (SV1) WebCT enabled:  No Quota:  None
Location Activity Description Weeks Monday Tuesday Wednesday Thursday Friday
CentralLecture1-11 14:00 - 14:50
CentralLecture1-11 11:10 - 12:00
First Class First class information not currently available
Exam Information
Exam Diet Paper Name Hours:Minutes
Main Exam Diet S1 (December)2:00
Resit Exam Diet (August)2:00
Summary of Intended Learning Outcomes
1 - Solve simple programming tasks (for example, convert a number into a string for the corresponding roman numeral).
2 - Define appropriate data types (for example, to represent parse trees for arithmetic expressions).
3 - Perform case analysis, use recursion (for example, evaluate a parse tree for an arithmetic expression to yield a value).
4 - Read and write programs that use basic list processing functions (nil, cons, append, length, take, drop, zip, concat).
5 - Read and write programs that use list comprehensions and higher-order functions (map, filter, fold).
6 - Choose appropriate decompositions of problems to create a program to solve that problem.
7 - Compose a functional program from suitable function definitions, including their types.
8 - Document programs effectively.
9 - Apply basic techniques to test and debug programs.
Assessment Information
Written Examination 90
Assessed Assignments 10
Oral Presentations 0

Formative assessment will be used to provide feedback and guidance to students and will take the form of quizzes, exercise sheets, practical exercises and coursework assignments, covering areas from across the syllabus. A summatively assessed class test (worth 10% of the final mark) will be held mid semester and will test students basic programming competence.

Special Arrangements
Additional Information
Academic description Not entered
Syllabus An introduction to the concepts of programming using a functional programming language.

Relevant QAA Computing Curriculum Sections: to be confirmed
Transferable skills Not entered
Reading list Simon Thompson, Haskell, The Craft of Functional Programming, 2nd edition, Addison Wesley, 1999
Study Abroad Not entered
Study Pattern Lectures 20
Tutorials 10
Timetabled Laboratories 0
Non-timetabled assessed assignments 0
Private Study/Other 70
Total 100
Keywords Not entered
Course organiser Dr Ewan Klein
Tel: (0131 6)50 2705
Course secretary Ms Kirsten Belk
Tel: (0131 6)50 5194
Help & Information
Search DPTs and Courses
Degree Programmes
Browse DPTs
Humanities and Social Science
Science and Engineering
Medicine and Veterinary Medicine
Other Information
Important Information
copyright 2011 The University of Edinburgh - 3 April 2011 11:19 am