: [Squeak-fr] [ANN] Nouvelle version de Prolog

Dreyfuss Pierre-André (EDUM) pierre-andre.dreyfuss at edu.ge.ch
Lun 7 Juil 14:51:46 UTC 2008


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 at 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 at lists.squeakfoundation.org
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/squeak-fr


-------------- section suivante --------------
Une pièce jointe non texte a été nettoyée...
Nom: non disponible
Type: application/ms-tnef
Taille: 6388 octets
Desc: non disponible
Url: http://lists.squeakfoundation.org/pipermail/squeak-fr/attachments/20080707/bd5690d0/attachment.bin


Plus d'informations sur la liste de diffusion Squeak-fr