# 20080610 04 - Explorations visuelles de programmes

L
1 of 22

## Recommended

ALF 11 - WebAssembly by
275 views43 slides
ALF 10 - Convention d'appel de fonction by
ALF 10 - Convention d'appel de fonctionAlexandru Radovici
624 views20 slides
ALF 8 - Generation de code by
ALF 8 - Generation de codeAlexandru Radovici
243 views36 slides
Tp1 awk by
Tp1 awkHunter Hisoka
228 views2 slides
Enib cours c.a.i. web - séance #5 - groovy by
Enib cours c.a.i. web - séance #5 - groovyHoracio Gonzalez
472 views30 slides
Ch09 21 by
Ch09 21schibu20
159 views3 slides

## What's hot

Need it help in Operating System quiz(computer language) and in some course by
Need it help in Operating System quiz(computer language) and in some courseDouria Zohbi
51 views3 slides
Calcul vent selon l'eurocode en excel by
Calcul vent selon l'eurocode en excelHani sami joga
980 views12 slides
Exercice dérivabilité by
Exercice dérivabilitéYessin Abdelhedi
488 views2 slides
12 quelques prédicats prédéfinis de swi by
12 quelques prédicats prédéfinis de swiSiham Rim Boudaoud
745 views2 slides
OpenLayers 3 by
OpenLayers 3Camptocamp
1.3K views57 slides
Exercice primitives by
Exercice primitivesYessin Abdelhedi
706 views3 slides

### What's hot(8)

Need it help in Operating System quiz(computer language) and in some course by Douria Zohbi
Need it help in Operating System quiz(computer language) and in some course
Douria Zohbi51 views
Calcul vent selon l'eurocode en excel by Hani sami joga
Calcul vent selon l'eurocode en excel
Hani sami joga980 views
OpenLayers 3 by Camptocamp
OpenLayers 3
Camptocamp1.3K views
INVERSE TRIGONOMETRIC FUNCTIONS by sumanmathews
INVERSE TRIGONOMETRIC FUNCTIONS
sumanmathews101 views

## Similar to 20080610 04 - Explorations visuelles de programmes

Introduction Clojure - Geneva JUG - Octobre 2012 by
Introduction Clojure - Geneva JUG - Octobre 2012Pablo Tamarit
813 views22 slides
Programmation Fonctionnelle by
2.3K views62 slides
ALF 11 - Diagramme de flux de contrôle et WebAssembly by
ALF 11 - Diagramme de flux de contrôle et WebAssemblyAlexandru Radovici
694 views43 slides
Programmation fonctionnelle by
Programmation fonctionnelleGeeks Anonymes
1.2K views46 slides
Compte rendu jess by
Compte rendu jessMarwa Marwouta
427 views17 slides
SdE 2 - Langage C, Allocation de memoire by
SdE 2 - Langage C, Allocation de memoireAlexandru Radovici
493 views70 slides

### Similar to 20080610 04 - Explorations visuelles de programmes(20)

Introduction Clojure - Geneva JUG - Octobre 2012 by Pablo Tamarit
Introduction Clojure - Geneva JUG - Octobre 2012
Pablo Tamarit813 views
ALF 11 - Diagramme de flux de contrôle et WebAssembly by Alexandru Radovici
ALF 11 - Diagramme de flux de contrôle et WebAssembly
Programmation fonctionnelle by Geeks Anonymes
Programmation fonctionnelle
Geeks Anonymes1.2K views
traitement-du-signal-avance.pptx by NouzhaBoukouba1
traitement-du-signal-avance.pptx
NouzhaBoukouba1100 views
Lattice Boltzmann sur architecture multicoeurs vectorielle - Une approche de ... by Joel Falcou
Lattice Boltzmann sur architecture multicoeurs vectorielle - Une approche de ...
Joel Falcou772 views
TP3: Comportement Temps Réel de l'Agent Perception by Said Benaissa
TP3: Comportement Temps Réel de l'Agent Perception
Said Benaissa210 views
Inverse trigonometric functions ii by sumanmathews
Inverse trigonometric functions ii
sumanmathews112 views
Traitement des données massives (INF442, A4) by Frank Nielsen
Traitement des données massives (INF442, A4)
Frank Nielsen178 views
Distances sémantiques dans des applications utilisant le web sémantique by Fabien Gandon
Distances sémantiques dans des applications utilisant le web sémantique
Fabien Gandon1.9K views
Théorie de l'information by RichardTerrat1
Théorie de l'information
RichardTerrat11.4K views

## More from LeClubQualiteLogicielle

20171122 03 - Les tests de performance en environnement DevOps by
20171122 03 - Les tests de performance en environnement DevOpsLeClubQualiteLogicielle
2.3K views30 slides
20171122 04 - Automatisation - formation et certifications by
20171122 04 - Automatisation - formation et certificationsLeClubQualiteLogicielle
764 views37 slides
20171122 01 - REX : Intégration et déploiement continu chez Engie by
20171122 01 - REX : Intégration et déploiement continu chez EngieLeClubQualiteLogicielle
1.1K views30 slides
20171122 02 - Engage developers to use better coding practices by
20171122 02 - Engage developers to use better coding practicesLeClubQualiteLogicielle
269 views21 slides
20171122 - Accueil Club Qualité Logicielle by
20171122 - Accueil Club Qualité Logicielle LeClubQualiteLogicielle
415 views12 slides
20151013 - Crédit Mutuel ARKEA : mise en place d'une traçabilité outillée des... by
20151013 - Crédit Mutuel ARKEA : mise en place d'une traçabilité outillée des...LeClubQualiteLogicielle
460 views23 slides

### More from LeClubQualiteLogicielle(20)

20171122 03 - Les tests de performance en environnement DevOps by LeClubQualiteLogicielle
20171122 03 - Les tests de performance en environnement DevOps
20171122 01 - REX : Intégration et déploiement continu chez Engie by LeClubQualiteLogicielle
20171122 01 - REX : Intégration et déploiement continu chez Engie
20151013 - Crédit Mutuel ARKEA : mise en place d'une traçabilité outillée des... by LeClubQualiteLogicielle
20151013 - Crédit Mutuel ARKEA : mise en place d'une traçabilité outillée des...
20140410 - Cartographie applicative multi-technologies et analyse d'impact by LeClubQualiteLogicielle
20140410 - Cartographie applicative multi-technologies et analyse d'impact
20140410 - Implémentation de squash TM-TA - Architecture et méthodologie by LeClubQualiteLogicielle
20140410 - Implémentation de squash TM-TA - Architecture et méthodologie
20140410 - Gestion des identités, traçabilité des accés - Analogie avec la qu... by LeClubQualiteLogicielle
20140410 - Gestion des identités, traçabilité des accés - Analogie avec la qu...
20130113 02 - TMMI, un modèle pour rentabiliser une organisation de test et a... by LeClubQualiteLogicielle
20130113 02 - TMMI, un modèle pour rentabiliser une organisation de test et a...
20130113 06 - Travaux de recherche sur la corrélation entre qualité du code e... by LeClubQualiteLogicielle
20130113 06 - Travaux de recherche sur la corrélation entre qualité du code e...
20130113 04 - Tests d'integration et virtualisation - La vision IBM by LeClubQualiteLogicielle
20130113 04 - Tests d'integration et virtualisation - La vision IBM
20130523 06 - The mathematics the way algorithms think / the mathematics the ... by LeClubQualiteLogicielle
20130523 06 - The mathematics the way algorithms think / the mathematics the ...

### 20080610 04 - Explorations visuelles de programmes

• 1. Explorations Visuelles de Programmes Françoise Balmas LIASD – Université Paris 8 Club Qualimétrie – Paris – 10 juin 2008
• 2. • Expériences de visualisation • Contexte de recherche – Exploration de programmes – Mise au point des outils • 3 Exemples • Harald Wertz, Rim Chaabane
• 3. Foo / Series • 33 LOC (Lisp), 8 fonctions • Enseignement • Compréhension de programmes • Très difficile
• 4. (define (foo s) (foo2 1 (nc s) s)) (define (foo2 p m s) (unless (> p m) (rec p nil s p) (foo2 (+ p 1) m s) )) (define (rec x sol s p) (if (= x 0) (im s sol p) (rec (- x 1) (cons (kamm (nthcdr (- x 1) s) p) sol) s p))) (define (kamm s p) (when (number? (nth p s)) (kamm2 (- (nth p s) (car s)) (nthcdr p s) p) )) (define (kamm2 inc s p) (cond ((null? (and s (number? (nth p s)))) inc) ((= inc (- (nth p s) (car s))) (kamm2 inc (nthcdr p s) p)) (t nil))) (define (nc l) (if (and l (number? (car l))) (+ 1 (nc (cdr l))) 0)) (define (im l sol p) (unless (member nil sol) (im2 (length sol) (length l) sol p l))) (define (im2 lsol ll sol p l) (set-cdr! (last sol) sol) (printf "--> : %on" (calcule 0 sol lsol ll p l)) ) (define (calcule n sol lsol ll p l) (unless (>= n ll) (cons (+ (nth (% n lsol) l) (* (/ n p) (car sol))) (calcule (+ n 1) (cdr sol) lsol ll p l))))
• 5. +1 +1 (foo '(1 2 1 3 X X)) +0 +0 Succes (0 1) pas 2 --> (1 2 1 3 1 4) -1 (foo '(1 2 1 3 1 4 X X X X)) +2 +3 Succes (0 1) pas 2 --> (1 2 1 3 1 4 1 5 1 6) Succes (2 -1 3) pas 3 --> (1 2 1 3 1 4 5 0 7 7) (foo '(1 2 4 8 16 X X)) Echec
• 10. Robot virtuel • 1600 LOC (Lisp), 143 fonctions, 17 macros, 18 escape • Enseignement • Vérification • Complexe car développé à plusieurs périodes, parties réutilisées
• 11. (createTable 4 4) (creObjet 'a 'boite 'taille '(2 2 3)) (creObjet 'b 'cube 'taille 2) (creObjet 'c 'block 'taille '(1 2)) (creObjet 'd 'block 'taille '(2 1)) (mapc '(e f g h) 'creObjet) (showTable) la Table : a a b b a a b b c c d e f g d h (pose-sur 'a 'b) (pose-sur 'd 'c) (pose-sur 'd 'Table) (pose-dans 'c 'a) (pose-dans 'd 'a) (showSur) a sur b c dans a d dans a (showTable) la Table : nil nil b b nil nil b b nil nil nil e f g nil h
• 16. Sudoku • 3300 LOC (Tcl/Tk), 110 procédures • Enseignement • Maintenance, refactoring • « Legacy » car développé en plusieurs étapes, parties presque redondantes
• 22. Expériences d’exploration visuelle • Pistes pour – Observer des comportements inattendus – Détecter des bugs – Suggérer des optimisations – … • A valider avec d’autres approches
Current LanguageEnglish
Español
Portugues
Français
Deutsche