salut,
comme je viens de l'annoncer sur squeak-dev, une nouvelle version de Prolog est disponible sur SqueakMap. de nombreuses modifications ont été apportées au code original et je suis passé du stade de la mise à jour et de l'étude du code à celui, plus dangereux mais bien plus rigolo, de son amélioration :)
je vais faire une page Prolog sur mon site et sur Ofset pour préciser tout ça, puis j'aimerais faire une pause et discuter des suites à donner avec ceux d'entre vous que Prolog-en-Squeak intéresse...
Stef
Salut J'ai annoncé la bonne nouvelle :-) dans la page géométrie et expert du site ofset http://community.ofset.org/index.php/G%C3%A9om%C3%A9trie_et_syst%C3%A8me_exp...
-------- Message d'origine-------- De: squeak-fr-bounces@lists.squeakfoundation.org de la part de Stéphane Rollandin Date: ven. 20/06/2008 13:35 À: Squeak in french / Squeak en français Objet : [Squeak-fr] [ANN] Nouvelle version de Prolog
salut,
comme je viens de l'annoncer sur squeak-dev, une nouvelle version de Prolog est disponible sur SqueakMap. de nombreuses modifications ont été apportées au code original et je suis passé du stade de la mise à jour et de l'étude du code à celui, plus dangereux mais bien plus rigolo, de son amélioration :)
je vais faire une page Prolog sur mon site et sur Ofset pour préciser tout ça, puis j'aimerais faire une pause et discuter des suites à donner avec ceux d'entre vous que Prolog-en-Squeak intéresse...
Stef
_______________________________________________ Squeak-fr mailing list Squeak-fr@lists.squeakfoundation.org http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/squeak-fr
Hello,
Stéphane, tu penses pas qu'un squeaksource serait bien pour Prolog (ca me permettrait de mieux suivre les évolutions) et éventuellement de participer (si jamais j'utiliser prolog par la suite)?
Cédrick
je veux bien, mais c'est un choc culturel pour moi, je n'utilise pas Monticello et je n'ai pas d'expérience en matière de développement coopératif :)
à voir...
Stef
cdrick a écrit :
Hello,
Stéphane, tu penses pas qu'un squeaksource serait bien pour Prolog (ca me permettrait de mieux suivre les évolutions) et éventuellement de participer (si jamais j'utiliser prolog par la suite)?
Cédrick
Cedrick a raison. En fait toi aussi tu va y gagner en tranquillité pour gérer le code.
En tout cas c'est chouette que tu fasses revivre cette implantation de Prolog. J'aimerais bien m'en servir à l'avenir.
Hilaire
----- Message d'origine ----- De: Stéphane Rollandin hepta@zogotounga.net Date: Vendredi, Juin 20, 2008 2:16 pm Objet: Re: RE : [Squeak-fr] [ANN] Nouvelle version de Prolog À: Squeak in french / Squeak en français squeak-fr@lists.squeakfoundation.org
je veux bien, mais c'est un choc culturel pour moi, je n'utilise pas Monticello et je n'ai pas d'expérience en matière de développement coopératif :)
à voir...
Stef
cdrick a écrit :
Hello,
Stéphane, tu penses pas qu'un squeaksource serait bien pour
Prolog (ca
me permettrait de mieux suivre les évolutions) et éventuellement de participer (si jamais j'utiliser prolog par la suite)?
Cédrick
Squeak-fr mailing list Squeak-fr@lists.squeakfoundation.org http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/squeak-fr
Moi c'est SqueakMap que j'ai pas intégré ;)
Si tu veux je crée le projet sur squeaksource et je m'occupe de créer les packages (ca me permettra d'apprendre à gérer les ordres de chargement...). Je pense faire un Prolog-all qui charge successivement comme dans l'ordre spécifié dans le préamble.
Par contre, il faudrait que tu te crée un compte utilisateur sur squeaksource.com, comme ca je t'ajoute en administrateur.
J'ai juste quelques petites remarques sur le package REPLMorph. Il y a des classes qui sont définit dans le système (Continuation, SequeceableCollection, ContextPart...). Il faudra surement faire des extensions de classes. Par contre, je ne sais pas si Continuation était présent avant 3.9 par défaut dans l'image.
Je laisse le projet ouvert ?
A plus
Cédrick
Le 20 juin 2008 14:15, Stéphane Rollandin hepta@zogotounga.net a écrit :
je veux bien, mais c'est un choc culturel pour moi, je n'utilise pas Monticello et je n'ai pas d'expérience en matière de développement coopératif :)
attends ça va trop vite :)
je ne suis pas disposé à passer en mode squeaksource tout de suite: il faut d'abord que je finisse ce que j'ai annoncé, c'est à dire décrire le code sur une page web, finalizer deux ou trois trucs et ensuite on voit ensemble, si ça vous va ("vous" collectif).
évidemment rien ne t'empêche de repackager le truc, mais si tu le fait tout de suite on va travailer en parallèle et peut-être se marcher sur les pieds.
J'ai juste quelques petites remarques sur le package REPLMorph. Il y a des classes qui sont définit dans le système (Continuation, SequeceableCollection, ContextPart...). Il faudra surement faire des extensions de classes. Par contre, je ne sais pas si Continuation était présent avant 3.9 par défaut dans l'image.
REPLMorph fait partie de ce que je dois finir. pour l'instant c'est une copie du LKREPLMorph de LispKit, et je compte en faire un package indépendant qui permet de faire des REPL à toutes les sauces. le REPL de LispKit et celui de Prolog en seraient des sous-classes. cela ne demande que quelques minutes, mais je ne l'ai pas encore fait...
Continuation est piquée de Seaside.
il y a d'autres trucs à voir. List et ConsCell de LispKit devraient être fondues, car le modèle est le même: ça fait un nouveau package. le code qui sert à assurer la compatibilité entre 3.8 et 3.10 doit être revu. d'ailleurs 3.9 n'est pas supporté pour le moment, et il faut régler ça.
je travaille dans une image 3.8 unique bourrée de modifications perso où je développe muO/surmulot, FunctionalTalk, LispKit et Prolog de façon intégrée. il me suffit de presser un bouton pour publier n'importe lequel de ces packages, pour 3.8 à 3.10 (sauf 3.9 pour Prolog, donc). je vous assure que pour moi ça ne peut pas être plus simple !
alors je veux bien changer de modèle pour faire du collectif mais laissez moi un peu de temps svp... ces projets sont menés de façon extrêmement personnelle depuis des années pour certains, vous ne pouvez pas me demander de changer ma façon de les gérer en quelques heures. j'espère que vous me comprenez :)
... maintenant il se trouve que je suis sans emploi, si vous avez des postes à pourvoir dans vos universités respectives je serais heureux de réviser mes méthodes de travail, travailler plus pour gagner plus et tout le toutim, et de grandes perspectives s'ouvriraient dans des lendemains qui chantent. mon CV est en ligne.
en attendant, à +, ce soir je fait la fête et il faut que j'y aille :)
Stef
attends ça va trop vite :)
je ne suis pas disposé à passer en mode squeaksource tout de suite: il faut d'abord que je finisse ce que j'ai annoncé, c'est à dire décrire le code sur une page web, finalizer deux ou trois trucs et ensuite on voit ensemble, si ça vous va ("vous" collectif).
ca marche ;)
évidemment rien ne t'empêche de repackager le truc, mais si tu le fait tout de suite on va travailer en parallèle et peut-être se marcher sur les pieds.
En fait c'est quasiment direct... la seul modif que j'ai du faire c'est remonter compilerClass de Prolog dans Logic.
Je sais pas si c'est "bien", toujours est il que ca empeche un syntax error vu qu'il y a des méthodes en "syntaxe" prolog dans Prolog... Est ce génant conceptuellement ?
J'ai juste quelques petites remarques sur le package REPLMorph. Il y a des classes qui sont définit dans le système (Continuation, SequeceableCollection, ContextPart...).
En fait il y a que continuation et effectivement cette classe n'est pas par defaut dans l'image...
REPLMorph fait partie de ce que je dois finir. pour l'instant c'est une copie du LKREPLMorph de LispKit, et je compte en faire un package indépendant qui permet de faire des REPL à toutes les sauces. le REPL de LispKit et celui de Prolog en seraient des sous-classes. cela ne demande que quelques minutes, mais je ne l'ai pas encore fait...
ok... Je vois pas trop ce que c'est le REPL... :)
il y a d'autres trucs à voir. List et ConsCell de LispKit devraient être fondues, car le modèle est le même: ça fait un nouveau package. le code qui sert à assurer la compatibilité entre 3.8 et 3.10 doit être revu. d'ailleurs 3.9 n'est pas supporté pour le moment, et il faut régler ça.
ok... je comprends pas tout de toutes façons là :)
je travaille dans une image 3.8 unique bourrée de modifications perso où je développe muO/surmulot, FunctionalTalk, LispKit et Prolog de façon intégrée. il me suffit de presser un bouton pour publier n'importe lequel de ces packages, pour 3.8 à 3.10 (sauf 3.9 pour Prolog, donc). je vous assure que pour moi ça ne peut pas être plus simple !
moi c'est un peu pareil... clic droit sur le package dans le browser et publish :) bon 2 clics c'est vrai... et pour chaque package...
alors je veux bien changer de modèle pour faire du collectif mais laissez moi un peu de temps svp... ces projets sont menés de façon extrêmement personnelle depuis des années pour certains, vous ne pouvez pas me demander de changer ma façon de les gérer en quelques heures. j'espère que vous me comprenez :)
T'inquiètes pas de soucis...
On verra ca à ESUG :)
... maintenant il se trouve que je suis sans emploi, si vous avez des postes à pourvoir dans vos universités respectives je serais heureux de réviser mes méthodes de travail, travailler plus pour gagner plus et tout le toutim, et de grandes perspectives s'ouvriraient dans des lendemains qui chantent. mon CV est en ligne.
Arf, je crois que je vais être potentiellement au chômage aussi... donc je peux pas t'aider... à moins de monter une boite smalltalk squeak :)
Sinon voila le premier jet (qui apparement marche - ca s'installe et les tests passent)... Je dis juste pour que tu me dises si la séparation te convient mais l'idée de package indépendant qui servirait à tes applis est surement la voie à suivre...
Donc voilà:
1 - Prolog-Core.mcz (les fichiers Prolog-Compiler.st et Prolog-Base.st + la méthode compilerClass dans Logic) --contient 2 catégories Prolog-Core-Compiler et Prolog-Core-Base
2 - Prolog-Main.mcz (Prolog-Core.st) Prolog PrologBrowser PrologInfo et PrologWorkspace --juste rajouté une méthode initialize dans PrologInfo pour ouvrir un Workspace avec l'information...
3 - Prolog-Examples.mcz --contient 3 categories Prolog-Examples-Dungeon Prolog-Example-Tutorial et Prolog-Example-Demo (avec Doctor et Family)
4 - Prolog-Tests 5 - Prolog-REPLMorph (J'aurai du laisser REPLMorph j'imagine vu que c'est un package indépendant mais c'est pas génant, juste un premier jet)
On doit charger 1 puis 2 puis les autres dans n'importe quel ordre.
Dis-moi juste ce que tu en penses... Ptet un package par package (et pas de regroupement comme j'ai fait). Aussi, je pense que les noms ne sont pas top... En particulier le fait que j'ai appeller Core le premier et Main ton Core... Si tu as des suggestions...
Sur ce, je joint ces packages pour ceux qui veulent essayer...
A plus et merci de ton boulot en tout cas ;)
Cédrick
Salut Stef
Je n'ai pas tout testé mais cela semble marcher. Il y a une petite correction à faire pour obtenir l'affichage des liste avec des virgules (comme à la lecture)
Mettre une ',' après le $ dans printOne: ligne: aStream nextPut: $, .
printOne: aStream car printOn: aStream. aStream nextPut: $, . (cdr isConsCell) ifTrue: [cdr printOne: aStream] ifFalse: [cdr ifNil: [^ self]. aStream nextPutAll: '| '. cdr printOn: aStream]
Avec cette correction J'obtient avec la grammaire des listes affichées correctement:
Grammar2 ?- ph(s,p,[]). (ph(sujet(gn(det('le', 'm'), n('chat', 'm')), 3), v('mange', 3)) ['le','chat','mange']) (ph(sujet(gn(det('la', 'f'), n('souris', 'f')), 3), v('mange', 3)) ['la','souris','mange']) (ph(sujet(gn(det('un', 'm'), n('chat', 'm')), 3), v('mange', 3)) ['un','chat','mange']) (ph(sujet(gn(det('une', 'f'), n('souris', 'f')), 3), v('mange', 3)) ['une','souris','mange']) (ph(sujet('je', 1), v('mange', 1)) ['je','mange']) (ph(sujet('tu', 2), v('manges', 2)) ['tu','manges'])
Test pour les listes:
testPrologList "PAD 2008/07/06 test list behaviours" { 'eq(l,[1,2,3]),eq(l,[h|t]).' -> 'an Array(an Array([1,2,3] 1 [2,3]))'. 'eq([1,2,3],[h|t]).' -> 'an Array(an Array(1 [2,3]))'. 'eq([1,2,3,4],[1,2|q])' -> 'an Array(an Array([3,4]))'. 'eq([1,2,3,4],[1,h|q])' -> 'an Array(an Array(2 [3,4]))'.
} do: [:assoc | self assert: ((Prolog evaluate: assoc key)asString) = assoc value asString]
Pad
_______________________________________________ Squeak-fr mailing list Squeak-fr@lists.squeakfoundation.org http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/squeak-fr
OUblié de dire qu'il faut aussi corriger le test testFisherCh214
(mettre les virgules côté réponses)
testFisherCh214
self assert: (String streamContents: [:str | (Chapter2 new outputStream: str) evalString: 'parse([#b,#b,#a,#a,#b,#a,#b])']) = '0 [#b,#b,#a,#a,#b,#a,#b] 0 [#b,#a,#a,#b,#a,#b] 0 [#a,#a,#b,#a,#b] 1 [#a,#b,#a,#b] 1 [#b,#a,#b] 2 [#a,#b] 2 [#b] 2 [] '.
self assert: (String streamContents: [:str | (Chapter2 new outputStream: str) evalString: 'parse([#b,#b,#a])']) = '0 [#b,#b,#a] 0 [#b,#a] 0 [#a] '
-------- Message d'origine-------- De: squeak-fr-bounces@lists.squeakfoundation.org de la part de Dreyfuss Pierre-André (EDUM) Date: dim. 06/07/2008 03:32 À: Squeak in french / Squeak en français Objet : : [Squeak-fr] [ANN] Nouvelle version de Prolog
Salut Stef
Je n'ai pas tout testé mais cela semble marcher. Il y a une petite correction à faire pour obtenir l'affichage des liste avec des virgules (comme à la lecture)
Mettre une ',' après le $ dans printOne: ligne: aStream nextPut: $, .
printOne: aStream car printOn: aStream. aStream nextPut: $, . (cdr isConsCell) ifTrue: [cdr printOne: aStream] ifFalse: [cdr ifNil: [^ self]. aStream nextPutAll: '| '. cdr printOn: aStream]
Avec cette correction J'obtient avec la grammaire des listes affichées correctement:
Grammar2 ?- ph(s,p,[]). (ph(sujet(gn(det('le', 'm'), n('chat', 'm')), 3), v('mange', 3)) ['le','chat','mange']) (ph(sujet(gn(det('la', 'f'), n('souris', 'f')), 3), v('mange', 3)) ['la','souris','mange']) (ph(sujet(gn(det('un', 'm'), n('chat', 'm')), 3), v('mange', 3)) ['un','chat','mange']) (ph(sujet(gn(det('une', 'f'), n('souris', 'f')), 3), v('mange', 3)) ['une','souris','mange']) (ph(sujet('je', 1), v('mange', 1)) ['je','mange']) (ph(sujet('tu', 2), v('manges', 2)) ['tu','manges'])
Test pour les listes:
testPrologList "PAD 2008/07/06 test list behaviours" { 'eq(l,[1,2,3]),eq(l,[h|t]).' -> 'an Array(an Array([1,2,3] 1 [2,3]))'. 'eq([1,2,3],[h|t]).' -> 'an Array(an Array(1 [2,3]))'. 'eq([1,2,3,4],[1,2|q])' -> 'an Array(an Array([3,4]))'. 'eq([1,2,3,4],[1,h|q])' -> 'an Array(an Array(2 [3,4]))'.
} do: [:assoc | self assert: ((Prolog evaluate: assoc key)asString) = assoc value asString]
Pad
_______________________________________________ Squeak-fr mailing list Squeak-fr@lists.squeakfoundation.org http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/squeak-fr
Dreyfuss Pierre-André (EDUM) a écrit :
testPrologList "PAD 2008/07/06 test list behaviours" { 'eq(l,[1,2,3]),eq(l,[h|t]).' -> 'an Array(an Array([1,2,3] 1 [2,3]))'. 'eq([1,2,3],[h|t]).' -> 'an Array(an Array(1 [2,3]))'. 'eq([1,2,3,4],[1,2|q])' -> 'an Array(an Array([3,4]))'. 'eq([1,2,3,4],[1,h|q])' -> 'an Array(an Array(2 [3,4]))'.
} do: [:assoc | self assert: ((Prolog evaluate: assoc key)asString) = assoc value asString]
ce test ne fonctionnera pas sous 3.8, où un Array est toujours affiché sous la forme #(...)
Stef
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
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
Dreyfuss Pierre-André (EDUM) a écrit :
Salut, je met en pièce jointe le fichier grammarv2
je ne l'ai pas reçu. ça fait deux fois que tu dis joindre un fichier et que je ne l'ai pas (j'utilise Thunderbird). que se passe-t-il ?
Stef
J'essaie encore une fois, pourtant ,il n'est pas grand.(2k) Je te l'envoie aussi par une autre messagerie. Pad
-------- Message d'origine-------- De: squeak-fr-bounces@lists.squeakfoundation.org de la part de Stéphane Rollandin Date: jeu. 10/07/2008 11:31 À: Squeak in french / Squeak en français Objet : Re: RE : : [Squeak-fr] [ANN] Nouvelle version de Prolog
Dreyfuss Pierre-André (EDUM) a écrit :
Salut, je met en pièce jointe le fichier grammarv2
je ne l'ai pas reçu. ça fait deux fois que tu dis joindre un fichier et que je ne l'ai pas (j'utilise Thunderbird). que se passe-t-il ?
Stef
_______________________________________________ Squeak-fr mailing list Squeak-fr@lists.squeakfoundation.org http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/squeak-fr
Rebonjour,
Désolé le fichier joint dans le précédant mail est celui d'une autre version de grammaire utilisant append. ------------------------------------------------------------------------------------- Avec ce fichier grammar2.st (class grammar) essayer:
phrase(s,p,[]).
Je joint le bon qui correspond au pages sur ofset, La formulation avec l'opérateur de liste | est plus simple qu'avec append.
Remarquez le fonctionnement de append avec les deux premiers arguments non instanciés qui décompose la liste du troisième argument en tous les découpages en 2 listes.
Grammar ?- append(l1,l2,['le' ,'chat','mange','la','souris']). (['le' 'chat' 'mange' 'la' 'souris'] [])
(['le','chat',mange','la'] ['souris']) (['le','chat','mange'] ['la','souris']) (['le','chat'] ['mange','la','souris']) (['le'] ['chat','mange','la','souris']) ([] ['le','chat','mange','la','souris'])
La formulation du fichier grammarv2.st est plus élégante
on utilise simplement le découpage entre tête et reste de la liste. Peut être directement testé par le goal:
Grammar ?- eq( l,['le','chat','mange']),eq(l,[t|r]). (['le','chat','mange'] 'le' ['chat','mange'])
------------------------------------------------------------------------------------- Avec le nouveau fichier ci-joint Grammarv2.st (correspondant à la page sur ofset.)
Grammar2 ?- ph(s,p,[]). (ph(sujet(gn(det('le', 'm'), n('chat', 'm')), 3), v('mange', 3)) ['le' 'chat' 'mange']) (ph(sujet(gn(det('la', 'f'), n('souris', 'f')), 3), v('mange', 3)) ['la' 'souris' 'mange']) (ph(sujet(gn(det('un', 'm'), n('chat', 'm')), 3), v('mange', 3)) ['un' 'chat' 'mange']) (ph(sujet(gn(det('une', 'f'), n('souris', 'f')), 3), v('mange', 3)) ['une' 'souris' 'mange']) (ph(sujet('je', 1), v('mange', 1)) ['je' 'mange']) (ph(sujet('tu', 2), v('manges', 2)) ['tu' 'manges'])
Si vous n'arrivez pas à télécharger le fichier essayez le lien:
http://community.ofset.org/images/Grammarv2.st
Pour le détail sur le traitement de la grammaire:
http://community.ofset.org/index.php/Grammaire_g%C3%A9n%C3%A9rative
Pad
-------- Message d'origine-------- De: squeak-fr-bounces@lists.squeakfoundation.org de la part de Dreyfuss Pierre-André (EDUM) Date: ven. 11/07/2008 18:00 À: Squeak in french / Squeak en français Objet : RE : RE : : [Squeak-fr] [ANN] Nouvelle version de Prolog
J'essaie encore une fois, pourtant ,il n'est pas grand.(2k) Je te l'envoie aussi par une autre messagerie. Pad
-------- Message d'origine-------- De: squeak-fr-bounces@lists.squeakfoundation.org de la part de Stéphane Rollandin Date: jeu. 10/07/2008 11:31 À: Squeak in french / Squeak en français Objet : Re: RE : : [Squeak-fr] [ANN] Nouvelle version de Prolog
Dreyfuss Pierre-André (EDUM) a écrit :
Salut, je met en pièce jointe le fichier grammarv2
je ne l'ai pas reçu. ça fait deux fois que tu dis joindre un fichier et que je ne l'ai pas (j'utilise Thunderbird). que se passe-t-il ?
Stef
_______________________________________________ Squeak-fr mailing list Squeak-fr@lists.squeakfoundation.org http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/squeak-fr
Tu sais Stéphane, ce n'est pas très difficile d'utiliser Monticello.
Le 20 juin 2008 14:15, Stéphane Rollandin hepta@zogotounga.net a écrit :
je veux bien, mais c'est un choc culturel pour moi, je n'utilise pas Monticello et je n'ai pas d'expérience en matière de développement coopératif :)
à voir...
Stef
cdrick a écrit :
Hello,
Stéphane, tu penses pas qu'un squeaksource serait bien pour Prolog (ca me permettrait de mieux suivre les évolutions) et éventuellement de participer (si jamais j'utiliser prolog par la suite)?
Cédrick
Squeak-fr mailing list Squeak-fr@lists.squeakfoundation.org http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/squeak-fr
Je vois bien l'ordre de chargement des packages... par contre je sais pas si je fais un package par... package ou si je fais des regroupement... A priori, je pars sur un package pour chaque... et après j'essaie un Prolog-all pour gérer l'ordre... mais c'est un peu l'inconnu pour moi ca.
'Prolog-Compiler.st'. 'Prolog-Base.st'. 'Prolog-Core.st'. 'Prolog-Documentation.st'. 'Prolog-Dungeon.st'. 'Prolog-Tests.st'. 'Prolog-Tests'
'REPLMorph.st'.
Monticello est pas compliqué sauf peut-être pour la gestion des dépendances au départ lors de la création du projet. Sinon, pour l'utilisation de base -> Squeak By Exemple (page 49)
c'est quoi le problème d'affichage dont tu parles pour OLPC et SqueakLand ?
stef
Dreyfuss Pierre-André (EDU) a écrit :
Salut J'ai annoncé la bonne nouvelle :-) dans la page géométrie et expert du site ofset http://community.ofset.org/index.php/G%C3%A9om%C3%A9trie_et_syst%C3%A8me_exp...
Salut Stephane image: Squeakland 3.8-05 latest update: #556
logicFather: assoc self unify: assoc key with: ((List with: 'John') add: 'Mary'; yourself) then: assoc value. self unify: assoc key with: ((List with: 'John') add: 'David'; yourself) then: assoc value. self unify: assoc key with: ((List with: 'David') add: 'Jack'; yourself) then: assoc value. self unify: assoc key with: ((List with: 'Arthur') add: 'Nancy'; yourself) then: [^ assoc value]. answer isEmptyOrNil ifTrue: [^ nil]. ^ answer asArray
Image officielle Etoys 3.0 pour OLPC
C'est ok: logicFather
father('John', 'Mary'). "John is the father of Mary" father('John', 'David'). father('David', 'Jack'). father('Arthur', 'Nancy').
J'ai commencé une page squeak prolog sur ofset
http://community.ofset.org/index.php/Squeak_Prolog
On peut utiliser la page associée de l'onglet discussion pour le développement.
Je peux faire la doc pour débuter. Bien entendu cette page est pour tous ceux qui veulent contribuer.
Pour ma part, je peux m'occuper de l'interface pout utiliser prolog à partir de Etoys en ajoutant au RPL des briques Etoys. moi aussi j'ignore tout de squeak source et de Monticello.
Pad
-------- Message d'origine-------- De: squeak-fr-bounces@lists.squeakfoundation.org de la part de Stéphane Rollandin Date: ven. 20/06/2008 14:09 À: Squeak in french / Squeak en français Objet : Re: RE : [Squeak-fr] [ANN] Nouvelle version de Prolog
c'est quoi le problème d'affichage dont tu parles pour OLPC et SqueakLand ?
stef
Dreyfuss Pierre-André (EDU) a écrit :
Salut J'ai annoncé la bonne nouvelle :-) dans la page géométrie et expert du site ofset http://community.ofset.org/index.php/G%C3%A9om%C3%A9trie_et_syst%C3%A8me_exp...
_______________________________________________ Squeak-fr mailing list Squeak-fr@lists.squeakfoundation.org http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/squeak-fr
Bonjour,
Pour ma part, je peux m'occuper de l'interface pout utiliser prolog à partir de Etoys en ajoutant au RPL des briques Etoys. moi aussi j'ignore tout de squeak source et de Monticello.
squeaksource est un détail :) ... juste un repository.
Seul Monticello compte et son utilisation est simple.
Je propose de m'occuper de la migration quand vous penserez que les dev sont stabilisés (en particulier le nombre et le nom de package).
Ainsi la "migration" sera simple pour vous. Il suffit de charger les versions voulues (selection du package et load) si les changments vous conviennent (change button) et de publier par Monticello (save button) quand un changement est effectué sur un package particulier. On peut meme se passer de browser monticello si on utilise la derniere version du package browser d'OB (permet d'acceder directement aux commandes de monticello depuis le menu clic droit dans le browser).
Cédrick
ps: On peut faire avoir prolog-all qui s'occupe de charger tous les packages avec dépendances. Le problème que j'ai c'est que je n'ai pas réussi à faire autrement qu'en deux fois. Core.st et Compiler.st puis le reste. Je crois qu'avec monticello, les classes sont seulement initialisées à la fin du chargement et donc le nouveau compiler ne peut pas etre utilisé qu' à la fin ce qui entraine des syntax error... Ptet pour les chargements, il vaudrait mieux un script avec Installer (mais encore un truc que je ne connais pas ;) ). Mais bon, tout ca c'est pour plus tard ;)
c'est le code décompilé que tu as là. ce n'est probablement qu'un question de mode d'affichage. il faut trouver le réglage qui affiche le code source dans le browser (habituellement le bouton de droite).
Stef
Dreyfuss Pierre-André (EDU) a écrit :
Salut Stephane image: Squeakland 3.8-05 latest update: #556
logicFather: assoc self unify: assoc key with: ((List with: 'John') add: 'Mary'; yourself) then: assoc value. self unify: assoc key with: ((List with: 'John') add: 'David'; yourself) then: assoc value. self unify: assoc key with: ((List with: 'David') add: 'Jack'; yourself) then: assoc value. self unify: assoc key with: ((List with: 'Arthur') add: 'Nancy'; yourself) then: [^ assoc value]. answer isEmptyOrNil ifTrue: [^ nil]. ^ answer asArray
Salut c'est bien le code source,
Le code décompilé a perdu le nom des paramètres et on a t1 t2 etc pour les paramètres
Si je mets sur décompilé j'ai
logicFather: t1 self unify: t1 key with: ((List with: 'John') add: 'Mary'; yourself) ...
C'est bien un problème de détection du type d'affichage qui ne va pas.
A part cet affichage tout marche normalement dans le panneau du bas.
J'ai fait la doc débutant avec des variariation sur family.
Si l'on veut garder la page d'entrée plus claire, on peut envoyer la doc débutant sur un autre page.
http://community.ofset.org/index.php/Squeak_Prolog#Les_premiers_pas
-------- Message d'origine-------- De: squeak-fr-bounces@lists.squeakfoundation.org de la part de Stéphane Rollandin Date: sam. 21/06/2008 19:03 À: Squeak in french / Squeak en français Objet : Re: RE : RE : [Squeak-fr] [ANN] Nouvelle version de Prolog
c'est le code décompilé que tu as là. ce n'est probablement qu'un question de mode d'affichage. il faut trouver le réglage qui affiche le code source dans le browser (habituellement le bouton de droite).
Stef
Dreyfuss Pierre-André (EDU) a écrit :
Salut Stephane image: Squeakland 3.8-05 latest update: #556
logicFather: assoc self unify: assoc key with: ((List with: 'John') add: 'Mary'; yourself) then: assoc value. self unify: assoc key with: ((List with: 'John') add: 'David'; yourself) then: assoc value. self unify: assoc key with: ((List with: 'David') add: 'Jack'; yourself) then: assoc value. self unify: assoc key with: ((List with: 'Arthur') add: 'Nancy'; yourself) then: [^ assoc value]. answer isEmptyOrNil ifTrue: [^ nil]. ^ answer asArray
_______________________________________________ Squeak-fr mailing list Squeak-fr@lists.squeakfoundation.org http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/squeak-fr
Dreyfuss Pierre-André (EDU) a écrit :
Salut c'est bien le code source,
Le code décompilé a perdu le nom des paramètres et on a t1 t2 etc pour les paramètres
Si je mets sur décompilé j'ai
logicFather: t1 self unify: t1 key with: ((List with: 'John') add: 'Mary'; yourself) ...
ah. sur une image 3.8 ou 3.10 le code décompilé apparait comme ton code source, c'est étrange.
Stef
Normalement la version squqakPugin.image est distribuée sans le .change, il y a dans les préférence la possibilité de supprimer le contrôle du .change, C'est une version allégée de Squeak, qui si on l'installe depuis squeakland permet de voir directement les projets dans le navigateur. Pour les développeurs, il y a une distribution avec un .change.
Je me suis habitué à bricoler du code dans cette image, on peut modifier le code mais on perd les comments et nos variables sont renommées ti t2 t3 etc... ce n'est pas toujours lisible.
En exécutant le SAR, dans la version sans .change j'ai bien le texte original des méthodes avec source. Ce n'est qu'en sauvant une méthode sans .change que l'on perd le source et les commentaires.
Pour l'affichage des méthodes prolog.
Les mêmes problèmes se retrouvent avec la version dev. c'est toujours l'affichage en code Smalltalk qui vient la différence est dans les noms de variables.
Ne perd pas trop de temps avec ça, l'image plugin doit bientôt être remplacée par celle de Yoshiki qui as le même défaut.
Il y a peut être aussi un problème de Vm . Il y a maintenant différentes VM, je suis sous windows.
Si tu peux m'indiquer quelques méthodes à soupçonner, je peux comparer ce qu'il y a dans les images et faire des tests.
Si tu voir par toi-même, l'image plugin ou plugin dev se trouve sur http:squeakland.org
Je recherche le message de Yoshiki pour te le rediriger si tu veux tester son image, mais ce problème d'image n'est pas urgent.
-------- Message d'origine-------- De: squeak-fr-bounces@lists.squeakfoundation.org de la part de Stéphane Rollandin Date: dim. 22/06/2008 12:30 À: Squeak in french / Squeak en français Objet : Re: RE : RE : RE : [Squeak-fr] [ANN] Nouvelle version de Prolog
Dreyfuss Pierre-André (EDU) a écrit :
Salut c'est bien le code source,
Le code décompilé a perdu le nom des paramètres et on a t1 t2 etc pour les paramètres
Si je mets sur décompilé j'ai
logicFather: t1 self unify: t1 key with: ((List with: 'John') add: 'Mary'; yourself) ...
ah. sur une image 3.8 ou 3.10 le code décompilé apparait comme ton code source, c'est étrange.
Stef
_______________________________________________ Squeak-fr mailing list Squeak-fr@lists.squeakfoundation.org http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/squeak-fr
Voici le texte du message de Yoshiki avec l'adresse pour télécharger son image.
De: squeakland-bounces@squeakland.org de la part de Yoshiki Ohshima Date: mar. 13/05/2008 04:34 À: squeakland.org mailing list; etoys Objet : [Squeakland] Another experimental version of OLPC image for non-XOenvironments
Hello,
We've been doing this on and off, but we put together another set of files that could be an Etoys system downloaded from squeakland.org as the official new version. This time, it is closer.
Please download:
http://tinlizzie.org/olpc/Squeakland-OLPC-080512.zip
and unpack it. And, on Windows XP or Vista, nagivate to "etoys.app" folder and double click etoys.exe to launch it. On Macintosh, double click "etoys.app". On Linux, execute etoys.sh.
Thank you!
-- Yoshiki
-------- Message d'origine-------- De: squeak-fr-bounces@lists.squeakfoundation.org de la part de Stéphane Rollandin Date: dim. 22/06/2008 12:30 À: Squeak in french / Squeak en français Objet : Re: RE : RE : RE : [Squeak-fr] [ANN] Nouvelle version de Prolog
Dreyfuss Pierre-André (EDU) a écrit :
Salut c'est bien le code source,
Le code décompilé a perdu le nom des paramètres et on a t1 t2 etc pour les paramètres
Si je mets sur décompilé j'ai
logicFather: t1 self unify: t1 key with: ((List with: 'John') add: 'Mary'; yourself) ...
ah. sur une image 3.8 ou 3.10 le code décompilé apparait comme ton code source, c'est étrange.
Stef
_______________________________________________ Squeak-fr mailing list Squeak-fr@lists.squeakfoundation.org http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/squeak-fr
Bonjour,
j'ai fixé un bug dans la classe Logic.
eq([3,4,5],[x|y]). provoque une erreur.
Grammar ?- eq([3,4,5],[3|y]) MessageNotUnderstood: LogicUnbound>>isEmpty
corrigé par le .cs ci-joint ça semble marcher:
Grammar ?- eq([3,4,5],[x|y]). (3 [4 5])
PAD
-------- Message d'origine-------- De: squeak-fr-bounces@lists.squeakfoundation.org de la part de Dreyfuss Pierre-André (EDU) Date: dim. 22/06/2008 03:39 À: Squeak in french / Squeak en français Objet : RE : RE : RE : [Squeak-fr] [ANN] Nouvelle version de Prolog
Salut c'est bien le code source,
Le code décompilé a perdu le nom des paramètres et on a t1 t2 etc pour les paramètres
Si je mets sur décompilé j'ai
logicFather: t1 self unify: t1 key with: ((List with: 'John') add: 'Mary'; yourself) ...
C'est bien un problème de détection du type d'affichage qui ne va pas.
A part cet affichage tout marche normalement dans le panneau du bas.
J'ai fait la doc débutant avec des variariation sur family.
Si l'on veut garder la page d'entrée plus claire, on peut envoyer la doc débutant sur un autre page.
http://community.ofset.org/index.php/Squeak_Prolog#Les_premiers_pas
-------- Message d'origine-------- De: squeak-fr-bounces@lists.squeakfoundation.org de la part de Stéphane Rollandin Date: sam. 21/06/2008 19:03 À: Squeak in french / Squeak en français Objet : Re: RE : RE : [Squeak-fr] [ANN] Nouvelle version de Prolog
c'est le code décompilé que tu as là. ce n'est probablement qu'un question de mode d'affichage. il faut trouver le réglage qui affiche le code source dans le browser (habituellement le bouton de droite).
Stef
Dreyfuss Pierre-André (EDU) a écrit :
Salut Stephane image: Squeakland 3.8-05 latest update: #556
logicFather: assoc self unify: assoc key with: ((List with: 'John') add: 'Mary'; yourself) then: assoc value. self unify: assoc key with: ((List with: 'John') add: 'David'; yourself) then: assoc value. self unify: assoc key with: ((List with: 'David') add: 'Jack'; yourself) then: assoc value. self unify: assoc key with: ((List with: 'Arthur') add: 'Nancy'; yourself) then: [^ assoc value]. answer isEmptyOrNil ifTrue: [^ nil]. ^ answer asArray
_______________________________________________ Squeak-fr mailing list Squeak-fr@lists.squeakfoundation.org http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/squeak-fr
ok, merci
visiblement il manque encore quelques tests :)
Stef
Dreyfuss Pierre-André (EDU) a écrit :
Bonjour,
j'ai fixé un bug dans la classe Logic.
eq([3,4,5],[x|y]). provoque une erreur.
Grammar ?- eq([3,4,5],[3|y]) MessageNotUnderstood: LogicUnbound>>isEmpty
corrigé par le .cs ci-joint ça semble marcher:
Grammar ?- eq([3,4,5],[x|y]). (3 [4 5])
PAD
squeak-fr@lists.squeakfoundation.org