Fiches de cours

Functional programming

CS-210

Enseignant(s) :

Kuncak Viktor
Odersky Martin

Langue:

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

Dans les plans d'études

    • Semestre
       Automne
    • Forme de l'examen
       Ecrit
    • Crédits
      5
    • Matière examinée
      Functional programming
    • Cours
      2 Heure(s) hebdo x 14 semaines
    • Exercices
      2 Heure(s) hebdo x 14 semaines
  • Passerelle HES - IN, 2020-2021, Semestre automne
    • Semestre
       Automne
    • Forme de l'examen
       Ecrit
    • Crédits
      5
    • Matière examinée
      Functional programming
    • Cours
      2 Heure(s) hebdo x 14 semaines
    • Exercices
      2 Heure(s) hebdo x 14 semaines
  • Passerelle HES - SC, 2020-2021, Semestre automne
    • Semestre
       Automne
    • Forme de l'examen
       Ecrit
    • Crédits
      5
    • Matière examinée
      Functional programming
    • Cours
      2 Heure(s) hebdo x 14 semaines
    • Exercices
      2 Heure(s) hebdo x 14 semaines
    • Semestre
       Automne
    • Forme de l'examen
       Ecrit
    • Crédits
      5
    • Matière examinée
      Functional programming
    • Cours
      2 Heure(s) hebdo x 14 semaines
    • Exercices
      2 Heure(s) hebdo x 14 semaines
    • Semestre
       Automne
    • Forme de l'examen
       Ecrit
    • Crédits
      5
    • Matière examinée
      Functional programming
    • Cours
      2 Heure(s) hebdo x 14 semaines
    • Exercices
      2 Heure(s) hebdo x 14 semaines
    • Semestre
       Automne
    • Forme de l'examen
       Ecrit
    • Crédits
      5
    • Matière examinée
      Functional programming
    • Cours
      2 Heure(s) hebdo x 14 semaines
    • Exercices
      2 Heure(s) hebdo x 14 semaines

Semaine de référence

 LuMaMeJeVe
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     
 
      Cours
      Exercice, TP
      Projet, autre

légende

  • Semestre d'automne
  • Session d'hiver
  • Semestre de printemps
  • Session d'été
  • Cours en français
  • Cours en anglais
  • Cours en allemand