Duration
28h Th, 24h Pr, 15h Proj.
Number of credits
Lecturer
Language(s) of instruction
French language
Organisation and examination
Teaching in the first semester, review in January
Schedule
Units courses prerequisite and corequisite
Prerequisite or corequisite units are presented within each program
Learning unit contents
General introduction to functions and procedures. Function definition techniques. Data structures. Recursive definitions, lambda-expression, lambda-calculus, and functional programming. Structural recursion. Program schemes. Functional programming vs imperative programming. Recursion vs iteration. Procedural abstraction. First-class object. Special topics such as, for example, continuations. Programming exercises: design and implementation of programs and the use of classical algorithms. The language Scheme is used.
Learning outcomes of the learning unit
Writing good functional programs, with adequate documentation.
Using the functional programming paradigm to solve various problems.
Determining when the functional approach is more convenient than the imperative, command-based approach.
This course contributes to the learning outcomes I.1, I.2, II.1, II.2, III.1, III.2, V.2, VI.2, VII.2 of the BSc in engineering.
Prerequisite knowledge and skills
Basic knowledge in programming and mathematics.
Planned learning activities and teaching methods
Weekly theoretical lectures and exercise sessions In groups of two, students will also realize a programming project accompanied by a written report.
Mode of delivery (face to face, distance learning, hybrid learning)
Face-to-face course
Additional information:
First semester.
Recommended or required readings
This course is based on:
P. Gribomont, Eléments de programmation en Scheme, Dunod, Paris, 2000. (available online)
The following book provides in-depth information and supplementary exercises:
H. Abelson, and G. J. Sussman. Structure and interpretation of computer programs, 2nd ed. The MIT Press, 1996. (available online)
Assessment methods and criteria
Exam(s) in session
Any session
- In-person
written exam ( open-ended questions )
Written work / report
Out-of-session test(s)
Additional information:
Two tests, a project, and a written exam. A second-chance test in December, only those for students whose average on the two tests is less than 10/20.
Second session only: final examination. Students who did not obtain at least 10/20 for their project may resubmit a revised version of their project in August.
- The results of the first test count towards 10% of the grade
- The results of the second test count towards 10% of the grade
- The results of the project count towards 20% of the grade
- The results of the written exam count towards 60% of the grade
Work placement(s)
Organizational remarks
All organizational aspects will be communicated through eCampus.
Contacts
- Professor: Christophe Debruyne
- Teaching assistant: François Rozet