Next: affichage graphique Up: Affichage Previous: Affichage

new_printer

Pour les structures récursives infinies, Caml se contente d'afficher les premiers niveaux, puis termine par des points de suspension évasifs, ce qui donne pour notre triangle fétiche :


triangle : image = Node [ref (Color Blanc); ref (Node [ref (Color Blanc); 
ref (Node [ref (Color Blanc); 
ref (Node [ref (Color Blanc); ref (Node [ref (Color Blanc); ref (Node [ref 
(Color Blanc); ref (Node [ref
(Color Blanc); ref (Node [ref (Color Blanc); ref (Node [ref (Color Blanc); 
ref (Node [ref (Color Blanc); 
ref (Node [ref (Color Blanc); ref (Node [ref (Color Blanc); ref (Node [ref 
(Color Blanc); ref (Node [ref 
(Color Blanc); ref (Node [ref (Color Blanc); ref (Node [ref (Color Blanc); 
ref (Node [ref (Color ...
On a donc utilisé la fonction new_printer pour redéfinir cet affichage. On commence tout d'abord par numéroter toutes les variables comme pour la surface, puis les variables sont affichées sous la forme :

no (no du 1er fils ; no du 2e fils ; ... ; no du ne fils)

Bien sûr, si le fils est Blanc ou Noir, ce n'est pas son numéro qui est affiché mais B ou N. Ce qui donne :


triangle : image = 0 : (B; 0; N; 0);


fdurand@clipper.ens.fr, fleuret@clipper.ens.fr
Thu Jun 9 18:32:25 MET DST 1994