Salut, je met en pièce jointe le fichier grammarv2
A toi de voir s'il faut l'intégrer comme exemple, dans ce cas on peut renommer la classe grammar,
C'est un classique de l'utilisation de Prolog et un bon exemple de l'utilisation de liste. (En remplaçant les structures générées par du code,et la grammaire par celle d'un langage informatique, on peut en faire un compilateur.)
Ps. J'ai complété le test pour les listes. Il y a pour les structures , espace entre les arguments à l'impression et non seulement , .
testList
{ 'eq(l,[1,2,3]),eq(l,[h|t]).' -> '([1,2,3] 1 [2,3])'. 'eq([1,2,3],[h|t]).' -> '(1 [2,3])'. 'eq([1,2,3,4],[1,2|q])' -> '([3,4])'. 'eq([1,2,3,4],[1,h|q])' -> '(2 [3,4])'. 'eq([''le'',''chat'',''mange''],[''le'',h|q])' -> '(''chat'' [''mange''])'. 'eq([father(''John'',''Mary''),father(''Henry'',''Peter'')], [h|q])' -> '(father(''John'', ''Mary'') [father(''Henry'', ''Peter'')])'. 'eq(x,''John''),eq(y,''Mary''),eq([father(x,y),father(''Henry'',''Peter'')], [h|q])' -> '(''John'' ''Mary'' father(''John'', ''Mary'') [father(''Henry'', ''Peter'')])'. 'eq([father(x,y),father(''Henry'',''Peter'')], [h|q]),eq(x,''John''),eq(y,''Mary'')' -> '(''John'' ''Mary'' father(''John'', ''Mary'') [father(''Henry'', ''Peter'')])'. } do: [:assoc | self assert: (String streamContents: [:str | (Prolog evaluate: assoc key) first printElementsOn: str]) = assoc value].
PAD
-------- Message d'origine-------- De: squeak-fr-bounces@lists.squeakfoundation.org de la part de Stéphane Rollandin Date: dim. 06/07/2008 17:08 À: Squeak in french / Squeak en français Objet : Re: : [Squeak-fr] [ANN] Nouvelle version de Prolog
Dreyfuss Pierre-André (EDUM) a écrit :
Je n'ai pas tout testé mais cela semble marcher.
tu as vu qu'il y a une nouvelle version sur SqueakMap ?
Il y a une petite correction à faire pour obtenir l'affichage des liste avec des virgules (comme à la lecture)
je ne l'avais pas fait car je trouvais que c'était pas beau à lire toutes ces virgules :) mais bien sur tu as raison il faut les mettre...
Grammar2 ?- ph(s,p,[]).
ça vient d'où cette classe Grammar2 ?
Stef
_______________________________________________ Squeak-fr mailing list Squeak-fr@lists.squeakfoundation.org http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/squeak-fr