Programmation fonctionnelle et logique
-
Enseignement
Détails
Faculté Faculté des sciences et de médecine Domaine Informatique Code UE-SIN.05020 Langues Français Type d'enseignement Cours
Cursus Bachelor Semestre(s) SA-2024 Titre
Français Programmation fonctionnelle et logique Allemand Funktionale und logische Programmierung Anglais Functional and logical programming Horaires et salles
Horaire résumé Vendredi 13:15 - 17:00, Hebdomadaire, PER 21, salle E130 (Semestre d'automne)
Struct. des horaires 2+2h par semaine durant 14 semaines Heures de contact 56 Enseignement
Responsables - Lalanne Denis
Enseignants - Luggen Michael
Assistants - Martignoni Augustin
Description La première partie du cours est consacrée à la programmation fonctionnelle qui vise à exprimer tout programme en terme de fonctions mathématiques. Les concepts de base de ce style de programmation, que sont les fonctions, la récursivité, les fonctions d'ordre supérieur et les fonctions anonymes, seront abordés et illustrés par des exercices pratiques avec la langage Elixir.
La seconde partie du cours est consacrée au langage Prolog qui est le principal représentant du paradigme de la programmation logique. Ce style de programmation inspiré de la logique du premier ordre conçoit tout programme comme un ensemble de faits et de règles (clauses de Horn) décrivant la solution d'un problème. Outre l'étude des concepts de base de ce langage, cette seconde partie du cours sera également l'occasion d'introduire la programmation par contrainte (CSP) et l'analyse syntaxique (DCG), deux thèmes pour lesquels Prolog est particulièrement adapté.
Chacune des deux parties sera accompagnée sur toute sa durée d'un mini-projet.Objectifs de formation Le but de ce cours est d'introduire les fondements de la programmation fonctionnelle et de la programmation logique. Commentaire Les unités d’enseignement se composent généralement de deux heures de cours et deux heures d’exercices par semaine. Nous vous prions de bien vouloir vous conformer aux délais d’inscriptions aux épreuves de la Faculté des sciences et de médecine.
Softskills Non Hors domaine Non BeNeFri Oui Mobilité Oui UniPop Non -
Dates et salles
Date Heure Type d'enseignement Lieu 20.09.2024 13:15 - 17:00 Cours PER 21, salle E130 27.09.2024 13:15 - 17:00 Cours PER 21, salle E130 04.10.2024 13:15 - 17:00 Cours PER 21, salle E130 11.10.2024 13:15 - 17:00 Cours PER 21, salle E130 18.10.2024 13:15 - 17:00 Cours PER 21, salle E130 25.10.2024 13:15 - 17:00 Cours PER 21, salle E130 08.11.2024 13:15 - 17:00 Cours PER 21, salle E130 22.11.2024 13:15 - 17:00 Cours PER 21, salle E130 29.11.2024 13:15 - 17:00 Cours PER 21, salle E130 06.12.2024 13:15 - 17:00 Cours PER 21, salle E130 13.12.2024 13:15 - 17:00 Cours PER 21, salle E130 20.12.2024 13:15 - 17:00 Cours PER 21, salle E130 -
Modalités d'évaluation
Examen écrit - SA-2024, Session d'hiver 2025
Date 31.01.2025 14:00 - 16:00 Mode d'évaluation Par note Description Selon modalité A de l'annexe du plan d'études en informatique Commentaire Open book exam
-
Affiliation
Valable pour les plans d'études suivants: Ba - Informatique de gestion - 180 ECTS
Version: 2020-SA_V02
3ème année 60 ECTS > Cours de 3ème année > Cours à choix min. 14 ECTS > Cours à choix - Type A > Programmation fonctionnelle et logique
Complément DEEM en informatique
Version: 2022_1/V_01
Complément DEEM pour Informatique 60 ou +30 > Programmes 60 ou +30 > Complément au programme Informatique 60 > Complément DEEM pour Informatique 60 (dès SA2020)
Complément au MSc en Neurosciences digitales [MA]
Version: 2023_1/V_01
Complément au MSc en informatique > UE avancées en Informatique (niveau bachelor)
Complément au MSc in Bioinformatics and Computational Biology [MA]
Version: 2022_1/V_01
Complément au MSc in Bioinformatics and Computational Biology > UE avancées en Informatique (niveau bachelor)
Complément au MSc in Computer Science [MA]
Version: 2022_1/V_01
Complément au MSc en informatique > UE avancées en Informatique (niveau bachelor)
Enseignement complémentaire en sciences
Version: ens_compl_sciences
Paquet indépendant des branches > UE avancées en Informatique (niveau bachelor)
Informatique 120
Version: 2022_1/V_01
BSc en informatique, branche principale, 2-3ème années > Informatique 2e et 3e année, UE obligatoires (dès SA2021)
Informatique 30
Version: 2022_1/V_01
Branche complémentaire en informatique 30 > Informatique br. compl. 30 ou 60 ECTS à choix (dès SA2019)
Informatique 60
Version: 2022_1/V_01
Branche complémentaire en informatique 60 > Informatique br. compl. 30 ou 60 ECTS à choix (dès SA2019)
Informatique 50 [BSc/BA SI]
Version: 2022_1/V_01
BSc_SI/BA_SI, Informatique 50 ECTS, 1-3ème années > BSc_SI/BA_SI, Informatique, 2-3ème années, UE à choix pour 50 ECTS (dès SA2020)
Informatique [3e cycle]
Version: 2015_1/V_01
Formation continue > UE avancées en Informatique (niveau bachelor)
Informatique [DEEM] 60
Version: 2022_1/V_01
Branche complémentaire en informatique (DEEM) 60 > Informatique branche complémentaire DEEM 60 ECTS à choix (dès SA2021)
Informatique [POST-DOC]
Version: 2015_1/V_01
Formation continue > UE avancées en Informatique (niveau bachelor)
Préalable au Bioinformatique et biologie computationnelle [PRE-MA]
Version: 2022_1/V_01
Préalable au MSc in Bioinformatics and Computational Biology > UE avancées en Informatique (niveau bachelor)
Préalable au MSc en Neurosciences digitales [PRE-MA]
Version: 2023_1/V_01
Préalable au MSc en Neurosciences digitales > UE avancées en Informatique (niveau bachelor)
Préalable au MSc en informatique [PRE-MA]
Version: 2022_1/V_01
Préalable au MSc en informatique > UE avancées en Informatique (niveau bachelor)