What Do CS1 Syllabi Reveal About Our Expectations of Introductory Programming Students?
Imperial College London - Programming 1
Country: | England |
University: | Imperial College London |
Course code: | |
Course title: | Programming 1 |
Date of Syllabus: | |
Source: | Manual search |
Associated Degrees: | Computer Engineering |
Prerequisits: | no |
Course for Majors: | yes |
Course stage: | |
Semester: | |
Programming language: | Haskell |
Language of Instruction: | English |
URL: | http://www.imperial.ac.uk/computing/current-students/courses/120_1/ |
Explicit or !Explicit LOs: | Explicit |
Learning Outcomes: |
To recall the syntax and semantics of the Haskell language To explain the key features of functional programming languages: recursion, lazy evaluation, lists, higher-order functions To explain specific features of the Haskell language: partial application, data types, type classes and overloading, basic monadic I/O To design and implement functions for solving well-specified problems To define and implement data types for solving a given problem that are both efficient and well-suited to the problem To use the full range of Haskell’s language features to ensure succinct and elegant solutions to problems To compare different solutions to the same problem using basic complexity arguments To develop solutions for more open-ended problems where there is little or no guidance on design To use the available Haskell implementations (e.g. GHC, GHCi, Hugs) to implement and execute solutions to given To learn about and use any available supporting tools for program development, analysis, debugging etc. To use the supplied tools and frameworks for program testing and submission |
LO categories: |
Writing programs Problem Solving (also things like computational thinking) Variables, assignment, arithmetic expressions, declarations, data types File handling & I/O Testing & Debugging code Evaluating Time/Space Complexity Recursion |