Undergraduate Course: Informatics 1 - Functional Programming (INFR08013)
Course Outline
School | School of Informatics |
College | College of Science and Engineering |
Credit level (Normal year taken) | SCQF Level 8 (Year 1 Undergraduate) |
Availability | Available to all students |
SCQF Credits | 10 |
ECTS Credits | 5 |
Summary | 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. |
Course description |
An introduction to the concepts of programming using a functional programming language.
Relevant QAA Computing Curriculum Sections: to be confirmed
|
Entry Requirements (not applicable to Visiting Students)
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. |
Information for Visiting Students
Pre-requisites | None |
High Demand Course? |
Yes |
Course Delivery Information
|
Academic year 2017/18, Available to all students (SV1)
|
Quota: None |
Course Start |
Semester 1 |
Timetable |
Timetable |
Learning and Teaching activities (Further Info) |
Total Hours:
100
(
Lecture Hours 20,
Seminar/Tutorial Hours 10,
Supervised Practical/Workshop/Studio Hours 20,
Formative Assessment Hours 2,
Summative Assessment Hours 3,
Programme Level Learning and Teaching Hours 2,
Directed Learning and Independent Learning Hours
43 )
|
Assessment (Further Info) |
Written Exam
0 %,
Coursework
10 %,
Practical Exam
90 %
|
Additional Information (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. |
Feedback |
Not entered |
Exam Information |
Exam Diet |
Paper Name |
Hours & Minutes |
|
Main Exam Diet S1 (December) | | 2:00 | | Resit Exam Diet (August) | | 2:00 | |
Learning Outcomes
On completion of this course, the student will be able to:
- Solve simple programming tasks and define appropriate data types
- Perform case analysis, use recursion (for example, evaluate a parse tree for an arithmetic expression to yield a value)
- Read and write programs that use basic list processing functions, list comprehensions and higher-order functions
- Choose appropriate decompositions of given problems and compose corresponding functional programs from suitable function definitions, including their types
- Document, test and debug programs
|
Reading List
Thinking Functionally with Haskell, Cambridge University Press, 2014. Richard Bird
The Craft of Functional Programming, 3rd edition, Simon Thompson, Haskell, Addison Wesley, 2011
Programming in Haskell, Graham Hutton
The Haskell School of Expression, Paul Hudak
Learn You a Haskell for Great Good! Miran Lipovica. No Starch
Press, 2011. |
Contacts
Course organiser | Prof Don Sannella
Tel: (0131 6)50 5184
Email: |
Course secretary | Mr Rob Armitage
Tel: (0131 6)50 5194
Email: |
|
© Copyright 2017 The University of Edinburgh - 6 February 2017 8:07 pm
|