Bonjour
c'est certainement présomptueux de parler de "bug" au sujet d'un environnement (Allegro CL) que je découvre tout juste. Mais, de mon point de vue, c'est ainsi que je le perçois... et c'est pour cette raison que je me tourne vers vous pour avoir votre avis...
Pour vous situer mon contexte, j'ai réalisé des développements en AutoLisp pour ajouter des fonctions utiles aux besoins de mon bureau d'études. Et j'ai découvert Lisp à cette occasion.
J'ai trouvé ce langage si "différent" (dans le bon sens) que j'ai eu envie de le pratiquer en dehors d'AutoCad.
J'ai trouvé "Allegro CL 8.2 Free Express Edition"... je ne sais pas ce que ça vaut ni en quoi consistent les limitations, ni ce que permet les versions payantes.
Avant de m'embarquer dans des trucs et des machins, je fais des essais "brut d'installation", en écrivant des bouts de programme dans un fichier texte (par l'éditeur Allegro, mais c'est pas obligé) et en les chargeant et les exécutant dans la fenêtre Listener... et rien de plus
....
Et donc, je rencontre ce problème de "sort" et même de "stable-sort" qui donnent des résultats curieux...
voici un petit bout de code avec les tris :
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
-------
On lui transmettant une liste de 4 listes de 6 nombres on obtient :
(analyse (list (list 3 45 6 21 7 5)(list 12 6 42 36 9 15)(list 8 28 27 14 6 9)(list 4 25 7 41 32 6)))
-->
1 (3 5 6 7 21 45)
" " 1(3 5 6 7 21 45)" 6 commun(s)"
" " 2(6 9 12 15 36 42)" 1 commun(s)"
" " 3(6 8 9 14 27 28)" 1 commun(s)"
" " 4(4 6 7 25 32 41)" 2 commun(s)"
2 (12 15 36 42)
" " 1(3 5 6 7 21 45)" 0 commun(s)"
" " 2(12 15 36 42)" 4 commun(s)"
" " 3(8 9 14 27 28)" 0 commun(s)"
" " 4(4 6 7 25 32 41)" 0 commun(s)"
3 (8 9 14 27 28)
" " 1(3 5 6 7 21 45)" 0 commun(s)"
" " 2(12 15 36 42)" 0 commun(s)"
" " 3(8 9 14 27 28)" 5 commun(s)"
" " 4(4 6 7 25 32 41)" 0 commun(s)"
4 (4 6 7 25 32 41)
" " 1(3 5 6 7 21 45)" 2 commun(s)"
" " 2(12 15 36 42)" 0 commun(s)"
" " 3(8 9 14 27 28)" 0 commun(s)"
" " 4(4 6 7 25 32 41)" 6 commun(s)"
Les résultats sont assez étonnants
-----------------------------------------
Le même sans les tris :
-----------------------------------------
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
Et son utilisation :
(analyse (list (list 3 45 6 21 7 5)(list 12 6 42 36 9 15)(list 8 28 27 14 6 9)(list 4 25 7 41 32 6)))
-->
1 (3 45 6 21 7 5)
" " 1(3 45 6 21 7 5)" 6 commun(s)"
" " 2(12 6 42 36 9 15)" 1 commun(s)"
" " 3(8 28 27 14 6 9)" 1 commun(s)"
" " 4(4 25 7 41 32 6)" 2 commun(s)"
2 (12 6 42 36 9 15)
" " 1(3 45 6 21 7 5)" 1 commun(s)"
" " 2(12 6 42 36 9 15)" 6 commun(s)"
" " 3(8 28 27 14 6 9)" 2 commun(s)"
" " 4(4 25 7 41 32 6)" 1 commun(s)"
3 (8 28 27 14 6 9)
" " 1(3 45 6 21 7 5)" 1 commun(s)"
" " 2(12 6 42 36 9 15)" 2 commun(s)"
" " 3(8 28 27 14 6 9)" 6 commun(s)"
" " 4(4 25 7 41 32 6)" 1 commun(s)"
4 (4 25 7 41 32 6)
" " 1(3 45 6 21 7 5)" 2 commun(s)"
" " 2(12 6 42 36 9 15)" 1 commun(s)"
" " 3(8 28 27 14 6 9)" 1 commun(s)"
" " 4(4 25 7 41 32 6)" 6 commun(s)"
avec des résultats corrects !
-----------------------------------------
J'espère que ce comportement est normal et que c'est moi qui me plante quelque part !
Merci d'avance pour vos avis (et conseils pour la suite)

 

 
		
		 
        

 
			
			
 
   


 Un bug d'Allegro CL sur la fonction "sort" ?
 Un bug d'Allegro CL sur la fonction "sort" ?
				 Répondre avec citation
  Répondre avec citation
Partager