# DEGREE REGULATIONS & PROGRAMMES OF STUDY 2011/2012- ARCHIVE for reference onlyTHIS PAGE IS OUT OF DATE

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

# Undergraduate Course: Informatics 1 - Functional Programming (INFR08013)

 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 http://www.inf.ed.ac.uk/teaching/courses/inf1/fp/ 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.
 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
 Pre-requisites None Displayed in Visiting Students Prospectus? Yes
 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 Central Lecture 1-11 14:00 - 14:50 Central Lecture 1-11 11:10 - 12:00 First Class Week 1, Monday, 14:00 - 14:50, Zone: Central. AT LT4 Exam Information Exam Diet Paper Name Hours:Minutes Main Exam Diet S1 (December) 2:00 Resit Exam Diet (August) 2:00
 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.
 Written Examination 90 Assessed Assignments 10 Oral Presentations 0 Assessment 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.
 None
 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 Email: ewan.klein@ed.ac.uk Course secretary Ms Kirsten Belk Tel: (0131 6)50 5194 Email: kbelk@exseed.ed.ac.uk
 Navigation Help & Information Home Introduction Glossary Search DPTs and Courses Regulations Regulations Degree Programmes Introduction Browse DPTs Courses Introduction Humanities and Social Science Science and Engineering Medicine and Veterinary Medicine Other Information Timetab Prospectuses Important Information
© Copyright 2011 The University of Edinburgh - 16 January 2012 6:15 am