ISBN-13: 9781848900769 / Francuski / Miękka / 2012 / 546 str.
Cette nouvelle edition contient de nouveaux chapitres pour les eleves de licence, ou la progression est volontairement lente et chaque etape est expliquee. Le chapitre sur le tri par interclassement a ete reecrit pour plus de clarte et de nouveaux resultats ont ete inclus. Un grand chapitre sur XSLT a ete ajoute. Ce livre s'adresse a priori a differents publics dont l'interet commun est la programmation fonctionnelle. Pour les etudiants de licence, nous offrons une introduction tres progressive a la programmation fonctionnelle, en proposant de longs developpements sur les algorithmes sur les piles et quelques types d'arbres binaires. Nous abordons aussi l'etude de l'allocation memoire a travers la synonymie (partage dynamique de donnees), le role de la pile de controle et du tas, le glanage automatique de cellules (GC), l'optimisation des appels terminaux et le calcul de la memoire totale allouee. Avec le langage fonctionnel Erlang, nous approfondissons les sujets de la transformation de programme vers la forme terminale, les fonctions d'ordre superieur et le style avec continuations. Une technique de traduction de petits programmes fonctionnels vers Java est aussi presentee. Pour les etudiants de master, nous associons a tous les programmes fonctionnels l'analyse mathematique detaillee de leur cout (efficacite) minimum et maximum, mais aussi moyen et amorti. La particularite de notre approche est que nos outils mathematiques sont elementaires (analyse reelle, induction, denombrement) et nous recherchons systematiquement des encadrements explicites de facon a deduire des equivalences asymptotiques. Par ailleurs, nous couvrons en detail des preuves formelles de proprietes, comme la correction, la terminaison et l'equivalence. Pour les professionnels qui ne connaissent pas les langages fonctionnels et qui doivent apprendre a programmer avec le langage XSLT, nous proposons une introduction a XSLT qui s'appuie directement sur la partie dediee aux etudiants de licence. La raison de ce choix didactique inhabituel repose sur le constat que XSLT est rarement enseigne a l'universite ou dans les ecoles d'ingenieurs, donc les programmeurs qui n'ont pas ete familiarises a la programmation fonctionnelle font face aux deux defis d'apprendre un nouveau paradigme et d'employer XML pour programmer: alors que le premier met en avant la recursivite, le second l'obscurcit a cause de la verbosite intrinseque a XML. En apprenant d'abord un langage fonctionnel abstrait, puis XML, nous esperons favoriser un transfert de competence vers la conception et la realisation en XSLT sans intermediaire."
Cette nouvelle édition contient de nouveaux chapitres pour les éleves de licence, ou la progression est volontairement lente et chaque étape est expliquée. Le chapitre sur le tri par interclassement a été réécrit pour plus de clarté et de nouveaux résultats ont été inclus. Un grand chapitre sur XSLT a été ajouté.Ce livre sadresse a priori a différents publics dont lintéretcommun est la programmation fonctionnelle.Pour les étudiants de licence, nous offrons une introduction tres progressive a la programmation fonctionnelle, en proposant de longs développements sur les algorithmes sur les piles et quelques types darbres binaires. Nous abordons aussi létude de lallocation mémoire a travers la synonymie (partage dynamique de données), le rôle de la pile de contrôle et du tas, le glanage automatique de cellules (GC), loptimisation des appels terminaux et le calcul de la mémoire totale allouée. Avec le langage fonctionnel Erlang, nous approfondissons les sujets de la transformation de programme vers la forme terminale, les fonctions dordre supérieur et le style avec continuations. Une technique de traduction de petits programmes fonctionnels vers Java est aussi présentée.Pour les étudiants de master, nous associons a tous les programmes fonctionnels lanalyse mathématique détaillée de leur cout (efficacité) minimum et maximum, mais aussi moyen et amorti. La particularité de notre approche est que nos outils mathématiques sont élémentaires (analyse réelle, induction, dénombrement) et nous recherchons systématiquement des encadrements explicites de façon a déduire des équivalences asymptotiques. Par ailleurs, nous couvrons en détail des preuves formelles de propriétés, comme la correction, la terminaison et léquivalence.Pour les professionnels qui ne connaissent pas les langages fonctionnels et qui doivent apprendre a programmer avec le langage XSLT, nous proposons une introduction a XSLT qui sappuie directement sur la partie dédiée aux étudiants de licence. La raison de ce choix didactique inhabituel repose sur le constat que XSLT est rarement enseigné a luniversité ou dans les écoles dingénieurs, donc les programmeurs qui nont pas été familiarisés a la programmation fonctionnelle font face aux deux défis dapprendre un nouveau paradigme et demployer XML pour programmer: alors que le premier met en avant la récursivité, le second lobscurcit a cause de la verbosité intrinseque a XML. En apprenant dabord un langage fonctionnel abstrait, puis XML, nous espérons favoriser un transfert de compétence vers la conception et la réalisation en XSLT sans intermédiaire.