Bonsoir (Bonjour ?),
Pour de nombreuses raisons (dont l'utilisation des logiques de description), je passe plus de temps que d'habitude sur Prolog.
J'aimerais m'essayer à XPCE afin de pouvoir repousser mes limites d'utilisation de Prolog.
J'ai donc suivi le tuto de Trap D.
Je suis sous Linux et ai installé le module xpce de swi-prolog par mon gestionnaire de paquets.
Voici le code que j'utilise.
Ensuite, j'exécute les choses suivantes.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 use_module(library(pce)). % je l'utilise car sans cette ligne, ça ne marche pas (et avec non plus :aie:) mon_premier_program :- % on crée la fenêtre new(D, window('Ma première fenêtre')), % on lui donne la bonne taille send(D, size, size(250, 100)), % on crée un composant texte new(T, text('Hello World !')), % on demande à la fenêtre de l'afficher à peu près au milieu send(D, display, T, point(80, 40)), % on envoie à la fenêtre le message d'affichage. send(D, open).
Et j'ai l'erreur suivante.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 swipl xpce.pl % là on rentre dans l'interpréteur consult('xpce.pl').
Si je vire le use_module dans le code, j'ai :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 ?- consult('xpce.pl'). ERROR: (/home/alp/prolog/xpce.pl:1): No permission to modify static_procedure `use_module/1' % xpce.pl compiled 0.00 sec, 1,632 bytes Yes ?- mon_premier_program. ERROR: mon_premier_program/0: Undefined procedure: new/2
Pourquoi ne me trouve-t-il pas new dans chacun des cas ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 ?- consult('xpce.pl'). % xpce.pl compiled 0.00 sec, 1,468 bytes Yes ?- mon_premier_program. ERROR: mon_premier_program/0: Undefined procedure: new/2 ?- % halt
Et pourquoi croit-il que je veux modifier use_module ?
beaucoup
Partager