http://cristal.univ-lille.fr/~marquet/lmd/ue/ue.pdf
La programmation fonctionnelle est un paradigme de programma-tion c’est-à-dire un mode de programmation et aussi une démarche indépendante de tout langage de programmation permettant de construire un programme résolvant un problème donné Ce mode de programmation est fondé sur une théorie mathématique éprouvée celle
3 Interface ordinateur MPI (Ex : PC- Adapter) 4 SPS SIMATIC S7-300 avec au moins un module d’entrées numériques et un module de sorties numériques Les entrées doivent sortir sur une unité fonctionnelle Exemple de configuration : - Bloc d’alimentation : PS 307 2A - CPU : CPU 314 - Entrées numériques : DI 16x DC24V
Programmation Fonctionnelle Avancée Evolution d’un évaluateur écrit sans monades Bilan des courses Onnevapasloincommeça! Programmation Fonctionnelle Avancée Evolution d’un évaluateur écrit sans monades ToutchangeI Nousavonsdutout changer danslecodedenotreinterprète Comparonslecasdel’application: ( langage simple )
ABB Robotics Technical reference manual RAPID Instructions Functions and Data types
Le paradigme de programmation « diviser pour régner » En informatique diviser pour régner 3 est une technique algorithmique consistant à : † Diviser : découper le problème initial en sous-problèmes du même type et indépendants;
Ces 3 fonctions utilisent le même principe de récurrence : une condition d'arrêt (n == 0) et un pas inductif exprimant la rela-tion entre n et n-1 Ce principe peut se définir par une autre fonction plus générale : recursion arret induction n n == 0 = arret n > 0 = induction n (recursion arret induction (n-1))
Recursion 5 1 3 Tutorial: Recall the hailstone function from Homework 1 First pick a positive integer n as the start If n is even divide it by 2 If n is odd multiply it by 3 and add 1 Repeat this process until n is 1 Write a recursive version of hailstone that prints out the values of the sequence and returns the number of steps
Recursion recursion: The definition of an operation in terms of itself –Solving a problem using recursion depends on solving smaller occurrences of the same problem recursive programming: Writing methods that call themselves to solve problems recursively –An equally powerful substitute for iteration(loops)
ProgrammationFonctionnelleAvancée Variantspolymorphes Sous-typage Soustypage Lestypesvariantrespectentunenotiondesous-typage:untype variantfermév estun“sous-type