Coursebooks

Functional programming

CS-210

Lecturer(s) :

Kuncak Viktor
Odersky Martin

Language:

English

Summary

Understanding of the principles and applications of declaratative programming, the fundamental models of program execution, application of fundamental methods of program composition,meta-programming through the construction of interpreters and advanced programming techniques.

Content

Introduction to programming in Scala
Functions and Evaluation
Higher-Order Functions
Data and Abstraction
Types and pattern matching
Lists
Collections
Lazy evaluation
For expressions, generators and monads
Functions and State
Lambda calculus and Lisp
Interpreting Functional Languages

Learning Prerequisites

Required courses

CS-107 Introduction to programming
CS-108 Practice of object-oriented programming

Learning Outcomes

By the end of the course, the student must be able to:

Teaching methods

MOOC. Ex Cathedra. Exercises and projects

Assessment methods

Supervision

Office hours Yes
Assistants Yes
Forum Yes

Resources

Bibliography

Abelson/Sussman : Structure and Interpretation of Computer Programs, MIT Press

Martin Odersky, Lex Spoon, and Bill Venners: Programming in Scala (Third Edition). A comprehensive step-by-step guide. https://www.artima.com/shop/programming_in_scala

Ressources en bibliothèque
Websites

In the programs

    • Semester
       Fall
    • Exam form
       Written
    • Credits
      5
    • Subject examined
      Functional programming
    • Lecture
      2 Hour(s) per week x 14 weeks
    • Exercises
      2 Hour(s) per week x 14 weeks
    • Semester
       Fall
    • Exam form
       Written
    • Credits
      5
    • Subject examined
      Functional programming
    • Lecture
      2 Hour(s) per week x 14 weeks
    • Exercises
      2 Hour(s) per week x 14 weeks
  • Passerelle HES - IN, 2020-2021, Autumn semester
    • Semester
       Fall
    • Exam form
       Written
    • Credits
      5
    • Subject examined
      Functional programming
    • Lecture
      2 Hour(s) per week x 14 weeks
    • Exercises
      2 Hour(s) per week x 14 weeks
  • Passerelle HES - SC, 2020-2021, Autumn semester
    • Semester
       Fall
    • Exam form
       Written
    • Credits
      5
    • Subject examined
      Functional programming
    • Lecture
      2 Hour(s) per week x 14 weeks
    • Exercises
      2 Hour(s) per week x 14 weeks
    • Semester
       Fall
    • Exam form
       Written
    • Credits
      5
    • Subject examined
      Functional programming
    • Lecture
      2 Hour(s) per week x 14 weeks
    • Exercises
      2 Hour(s) per week x 14 weeks
    • Semester
       Fall
    • Exam form
       Written
    • Credits
      5
    • Subject examined
      Functional programming
    • Lecture
      2 Hour(s) per week x 14 weeks
    • Exercises
      2 Hour(s) per week x 14 weeks

Reference week

 MoTuWeThFr
8-9     
9-10     
10-11    CO021
DIA004
DIA005
ELA1
ELD120
11-12    
12-13     
13-14  CO2  
14-15    
15-16     
16-17     
17-18     
18-19     
19-20     
20-21     
21-22     
 
      Lecture
      Exercise, TP
      Project, other

legend

  • Autumn semester
  • Winter sessions
  • Spring semester
  • Summer sessions
  • Lecture in French
  • Lecture in English
  • Lecture in German