### 9.7.1 Ouvrir le débuggeur : debug

debug a comme argument une fonction et ses arguments.
debug ouvre l’écran de la fenêtre de mise au point (ou débugger) avec sa barre de boutons. On a la possibilité :

- d’exécuter le programme au pas à pas avec le bouton sst qui inscrit la commande sst() dans la ligne de commande,
- de mettre des points d’arrêts (breakpoint) avec break (ou la commande breakpoint),
- d’aller directement aveccont à une ligne précise marquée par un point d’arrêt (ou la commande cont),
- de voir avec watch les variables que l’on désire surveiller (ou la commande watch),
- d’exécuter au pas à pas les instructions d’une fonction utilisateur avec dans qui inscrit la commande sst_in() dans la ligne de commande, ou encore
- de sortir brutalement du débuggeur avec tuer (ou la commande kill ou tuer).

On tape par exemple :
debug(pgcd(15,25)).
Il faut bien sûr que le programme pgcd existe.
Par exemple on a tapé :

    pgcd(a,b):={
    local r;
    while(b!=0) {
    r:=irem(a,b);
    a:=b;
    b:=r;
    }
    return a;
    }

Puis si on veut observer les variables a et b, on clique sur watch : watch s’inscrit dans la ligne eval et on compléte cette ligne en watch(a) puis enter, puis on clique sur watch et on compléte watch en watch(b) puis enter.
Ensuite on clique sur sst, et on voit à chaque ètape (la ligne qui est exécutée est en surbrillance) les valeurs de a et b dans la zone située en dessous de la barre des boutons.