Apprendre et débuter la programmation pour Macintosh

[Débuter la programmation pour Macintosh, MacOS 7, 8 et X, trouver la documentation sur la Toolbox, les langages C, C++, Pascal, Basic, Java, Hypertalk, Prograph, Hypercard, MPW, Code Warrior, ResEdit, Resorcerer, les ressources, compilateurs, linkers, debugger, sur les traces de Clarus Moof la Dogcow]


Cette page nécessite d'activer JavaScript.
Si vous n'en disposez pas, vous devrez peut-être copier manuellement les adresses des liens dans le champs de saisie des URL de votre navigateur

Ouvrir les liens Web externes dans une nouvelle fenêtre? Oui Non

Mise-à-jour le 6/02/2001
http://www.multimania.com/resister/
Débuter la programmation pour Macintosh

Attention, cette page ne prétend absolument pas être exhaustive. Il s'agit juste de donner quelques pistes pour débuter la programmation. Si comme moi vous habitez loin d'une grande ville, vous serez probablement content de savoir où trouver un peu de documentation.
Car le plus dur dans la programmation, c'est la recherche des outils et de la documentation nécessaire. Ensuite, il est juste question de méthode. La phase préliminaire de conception, elle, est plutôt amusante!

Pourquoi programmer pour Macintosh

Lorsque le chapitre qui devint cette page a été écrit, nous étions en fin 1997. La presse tirait alors — quelle bande de cons et/ou de désinformateurs malhonnêtes! — à boulets rouges sur Apple, en annonçant la mort imminente d'Apple et la disparition du génial Macintosh, que tous ceux qui connaissent un tant soit peu l'informatique (sauf ceux qui ont offert leur âme à Microsoft) reconnaissent pourtant comme la meilleure plateforme micro-informatique du marché. Dans un tel contexte, il était capital d'encourager la création de programmes pour le Macintosh, même de simples freewares ou sharewares, afin de dynamiser une plate-forme que certains voulaient moribonde. Il s'agissait à l'époque de soutenir Apple et de continuer à écrire des programmes pour ne pas se retrouver un jour obligé de subir des PC Wintel, et devenir de ce fait des escalves de Micro$oft et Intel. L'objectif était alors et avant tout défendre sa liberté.
Aujourd'hui, il y a bien d'autres raisons d'écrire des programmes pour Macintosh. Apple bat tous ses records de ventes et cela change beaucoup de choses. Ainsi, en 1999, 3000 nouveaux logiciels sont apparus! On peut programmer pour le plaisir, car c'est une vraie jouissance que de voir naître un programme que l'on a créé à partir d'horribles lignes de texte; plaisir aussi avec le sentiment de connivence et la connaissance intime de la machine et de l'OS que la programmation implique. Mais on peut aussi programmer, parce que cela permet de gagner de l'argent (car il est bien difficile de vivre sans) d'une façon agréable et non-polluante. Certains auteurs de sharewares exclusivement pour Mac tirent des revenus non-négligeables de cette activité. Quelques-uns sont même devenus riches. Pour ma part, même si je suis loin d'avoir fini ce grand projet que j'ai commencé en juin 98, je ne regrette vraiment pas de m'être lancé dans pareille aventure. Apprendre à programmer le Mac m'appris beaucoup de choses et pas seulement dans le domaine particulier de l'écriture de programmes pour cette merveilleuse machine. C'est pourquoi je vous invite à tenter une expérience similaire. « Hello! Enter and say Moof! », dirait Clarus la Dogcow.
Depuis peu, nous avons une nouvelle motivation possible : celle de faire partie des pionniers qui vont écrire des programmes d'applications pour MacOS X, le système d'exploitation (OS) pour micro-ordinateurs le plus puissant de la planète et le plus en avance technologiquement

Pourquoi programmer? | Les outils | La documentation | Le problème du langage | Une astuce pour gagner du temps | La révolution MacOS X

Quels outils
pour la programmation avec MacOS?

Avertissement : l'arrivée de MacOS X constitue une nouvelle révolution pour le monde du Macintosh. Ce qui est écrit ici sur les langages et les outils concerne MacOS classique et Carbon (la boîte de compatibilité de MacOS X avec les précédents systèmes). Pour les spécificités de Cocoa (la nouvelle Toolbox de MacOS X), voyez plus particulièrement la page La révolution MacOS X, en complément de celle-ci.

1. Programmer avec CodeWarrior et MPW

Ces deux outils sont dit de bas niveau, car il permettent un contrôle très poussé de ce que vous programmez. Vous intervenez au niveau des ROM et de la Toolbox. (le niveau le plus bas est celui du processeur, que l'on pilote en langage machine avec 0 et 1! La Toolbox est un très vaste ensemble de fonctionnalités qu'Apple met en ROM ou dans l'OS à destination des programmes : une gigantesque boîte à outils, comme son nom l'indique). De ce fait, vous pouvez donner des ordres à n'importe quelle partie de la machine.
  MPW (Macintosh Programming Workshop), qui a l'avantage d'être gratuit, vous permettra de réaliser de belles applications, au prix d'un développement plus long et plus complexe. Il vous faudra un certain temps pour assimiler l'interface pas du tout intuitive. Pour ma part, j'ai passé plus de de temps à essayer de comprendre comment utiliser les nombreux morceaux de MPW, qu'à apprendre à écrire de petits programmes simples, source en C et ressources comprises! (mais je n'avais probablement pas la bonne doc ;-). MPW a été conçu pour des pros de la programmation qui n'ont pas besoin qu'on les aide par une interface claire! En fait, si vous êtes ambitieux et courageux, si les lignes de commandes complexes ne vous effraient pas, alors MPW, qui est constitué notamment par un shell bien ardu à apprendre, est pour vous. Comme il est gratuit, il serait dommage de vous en priver, car c'est vraiment un bon produit, probablement le meilleur, si l'on veut bien oublier son interface lamentable. Si vous ne vous reconnaissez pas dans ce portrait, oubliez MPW qui risquerait de vous décourager!
  CodeWarrior, lui, vous facilite grandement le travail, notamment par son interface bien supérieure, son débogueur beaucoup plus simple d'emploi, sa documentation assez claire et abondante (des milliers de pages au format PDF) conçue aussi bien pour les débutants que pour les pros et par la possibilité d'utiliser le "framework" PowerPlant Constructor, ensemble de classes C++ convenant à toutes sortes d'applications pour la réalisation de leur interface. En outre, alors que vous devez copier MPW et sa volumineuse et indispensable documentation depuis un des sites mentionnés ci-dessous, CodeWarrior est fourni sur CD avec des explications partiellement en français (ouvrages de chez Eyrolles sur le C et le C++). Cependant, si vous habitez hors de Paris ou d'une grande ville, armez-vous de patience pour trouver le revendeur qui le propose (pour ma part, j'habite à 100 m d'un Apple Center :-) . Et s'il ne l'a pas en stock, précisez bien que vous voulez la version pour MacOS et surtout pas pour PowerPC! (Cette dernière version s'adresse aux systèmes embarqués à base de PowerPC — ou aux stations RISC IBM PowerPC? — mais pas aux Macintosh!). CodeWarrior Pro présente un avantage pour qui voudrait expérimenter (dans un but didactique, bien sûr) les divers fichiers sources qui exploitent la grande vulnérabilité des PC : il peut compiler aussi pour x86. ;-)
Enfin, notez que le CD de CodeWarrior contient MPW.
Trouver MPW : MPW est en copie libre sur http://developer.apple.com/tools/, sur ftp://dev.apple.com/(il me semble dans devworld/Tool_Chest/Core_Mac_OS_Tools/) ou sur ftp.apple.com. (j'ignore dans quel dossier). Il est aussi présent sur le CD de CodeWarrior Pro pour Macintosh (ces deux outils sont parfaitement compatibles entre eux). Vous pouvez donc en toute légalité demander MPW à quelqu'un qui possède Codewarrior.
Trouver CodeWarrior : ce produit est édité par Metrowerks en trois versions (distribuées en France par Aware jusqu'en sept. 2000, par TouSoft depuis). Prix de 800 FF environ (Discover Programming) à 3500 FF (version Pro, code pour 68k,PowerPc, x86); Academic Pro (id) : comptez 1000 FF. La version Academic Pro présente un rapport qualité/prix remarquable, puisque sa seule limitation est d'être réservée pour l'écriture de programmes non-commerciaux et notamment aux étudiants. (la version 5 troque le langage Pascal au profit de Java)


2. Basic avec FutureBasic et RealBasic

Le langage Basic est réputé plus simple que ceux évoqués plus haut. Voici trois outils (il y en a probablement d'autres) :
Real Basic (www.realsoftware.com) ou FutureBasic (www.pixmix.com et http://euro.futurebasic.com/fr/), ou Vip Basic, de Mainstay, distribué en France et en Europe (www.irislink.com) par I.RI.S. Ces outils en Basic ont l'avantage de fonctionner sur de petites configurations. (ex. 68020, OS 7.1, 3,5 MO de RAM pour RealBasic 1.1.1).
Concernant Future Basic, la version 2 dispose d'un manuel partiellement en français, d'un constructeur d'interface en mode graphique, vous autorise à placer du code en assembleur 68k… (essai de cette ancienne version dans SVM Mac 101, 12/98). Depuis janvier 2000, FutureBASIC 3 est disponible en France (en même temps qu'aux USA). Le produit a été intégralement traduit en notre langue, y compris les centaines de fichiers d'exemples. Le CD européen contient la version française et la version US. Les versions italienne et allemande sont en cours de réalisation. FutureBasic 3 compile désormais des applications PPC, 68K et Fat. Selon Staz Software, l'auteur de la version US, le code généré est en moyenne 4 fois plus rapide que celui de Real Basic (nous n'avons pas vérifié ce point). L'environnement est ouvert (le runtime est éditable par le programmeur), l'accès à la Toolbox est quasi intégral, et les shared libraries sont enfin accessibles. On peut donc s'attaquer à d'assez gros et complexes projets. Un runtime objet est livré sur le CD, mais il est encore dans sa prime enfance.
Vous trouverez plus d'infos concernant Future Basic 3 sur http://euro.futurebasic.com/fr/ou en écrivant à :
A. Pastor
Pix & Mix (distributeur européen FutureBASIC 3)
32, boulevard de Ménilmontant
75020 Paris - France
Tél. : +33 1 43 46 44 44 - Fax : +33 1 43 49 16 51
Pix & Mix nous a semblé dynamique et attaché à Future Basic. C'est un bon point que nous tenions à souligner.

Quand à RealBasic, doté lui aussi de fonctions de construction graphique d'interface, il est fort bien documenté (mais en anglais), riche en exemples, compatible avec VisualBasic (de Kro$off, utile si vous venez du monde obscur) et, last but not least, son compilateur est excellent. Vous en trouverez un essai rapide dans SVM Mac 105 d'Avril 99. La version 2, désormais disponible, est beaucoup plus riche. Le créateur (un passionné du Macintosh :-) de l'excellent RealBasic définit son produit comme le juste milieu entre les logiciels usant de langages intervenant à un haut niveau comme Director (simples, mais limités) et ceux de bas niveau, comme MPW ou CodeWarrior (illimités, mais demandant un apprentissage assez long). Cependant, pour ceux qui se trouveraient limités par le Basic, RealBasic autorise le recours au C lorsque cela est nécessaire, si bien que vous pouvez aller très loin, plus simplement qu'avec des outils comme MPW ou CW. (De toutes façons, je doute fort que vous atteigniez les limites de RB. À moins de travailler sur un projet très ambitieux ou de vouloir écrire des drivers, vous n'aurez probablement jamais recours aux ajouts en C).
Plus d'infos sur www.realsoftware.com

En conclusion, je crois que si j'avais connu plus tôt ces deux remarquables outils de programmation en Basic, je ne me serais pas lancé dans l'apprentissage du C et de CodeWarrior.

3. Prograph : un inconnu génial

Prograph est un langage réçent et assez révolutionnaire. Certains disent de lui qu'il est aux autres langages ce que le Macintosh est aux autres ordinateurs! (D'ailleurs, il me semble que des cerveaux d'Apple ont contribué à sa naissance). Sa particularité : il utilise une syntaxe graphique!.
Hélas, son éditeur, Pictorius, à l'heure actuelle, a décidé de ne plus mettre à jours les outils Prograph pour Macintosh. Cela ne vous empêche pas de tester l'IDE Classic (p. ex. pour une interface prototype) et, s'il vous plaît, de demander à Pictorius d'en reprendre le développement. (C'est ce que j'ai d'ailleurs fait). Une décision sera prise quant à la continuité de cet outil sur Mac vers Mars ou Avril 2001. Donc, si vous souhaitez pouvoir acquérir les outils Prograph (dont le compilateur) pour MacOS X, c'est maintenant qu'il faut le faire savoir à Pictorius. (URL ci-dessous).
Comme je viens seulement d'essayer Prograph, je ne peux guère vous en dire plus.
Vous trouverez une version gratuite de l'IDE Prograph, comprenant un éditeur et un interpréteur, ainsi que beaucoup de docs et des liens sur www.taylor-design.com. La version commerciale se trouve sur www.pictorius.com.
Il semble qu'il en existe aussi une version OpenSource, mais je ne sais pas où la trouver.


4. Des produits à part

Jusqu'ici, les produits présentés étaient des outils généralistes qui intervenaient à des niveaux assez bas. Il en existe cependant d'autres, plus spécialisés qui permettent de réaliser plus simplement certaines catégories de programmes applicatifs. En voici quelques-uns :
- 4D de la société française ACI, est un puissant gestionnaire de bases de données (SGBD), il dispose d'une foule d'outils, dont un compilateur optimisé tant pour les processeurs Motorola 68k que pour les PowerPC et même pour les vieilleries boguées de chez Intel (les Pentium, pour ceux qui n'auraient pas compris ;-). De nombreux développeurs de par le vaste monde refusent d'utiliser autre chose que 4D.
- FileMaker Pro, célèbre gestionnaire de Bases de Données, d'une grande facilité d'emploi dispose lui-aussi d'une version pour développeurs, qui offre des possibilités similaires. Hélas, la version 5 bénéficie d'une intégration poussée avec Microchiotte Excel et Access, qui n'est pas un progrès et qui se répercute défavorablement sur l'interface. Heureusement, FileMaker Inc. n'a pas poussé la ressemblance avec Microchiotte Office en allant jusquà truffer FMP d'insupportables bogues majeurs ni à le rendre compatible avec Virus Basics for Applications.
- Omnis est lui aussi un puissant SGBD relationnel très apprécié. Il a pour particularité d'exister aussi en version pour Linux.
Grâce à ces puissants gestionnaires de bases de données, capables de compiler des programmes autonomes, vous pouvez notamment réaliser facilement et rapidement des logiciels de gestion et des sites web dynamiques.

- Hypercard et Supercard peuvent vous permettre d'écrire de très nombreuses applications, beaucoup plus simplement que les autres outils. Il s'agit de logiciels auteurs multimédia (mais pas seulement, loin de là) qui peuvent produire des applications indépendantes (avec toutefois l'aide d'un produit tiers nommé LiveCard, dans le cas d'Hypercard). Hypercard est un produit d'Apple (www.hypercard.apple.com), tandis que Supercard est désormais vendu par IncWell. Le premier est plus simple, mais moins puissant que le second qui constitue une bonne alternative au coûteux Director et dont une nouvelle version vient de sortir (On attend toujours la version 3 d'Hypercard, annoncée mais sans cesse repoussée). Hypercard a l'avantage de pouvoir s'enrichir d'une très vaste bibliothèque de fonctions externes (XCMD), qui lui permettent de fabriquer des applications pour de très nombreux besoins, bien au-delà de la simple présentation interactive façon Director. (Pour Supercard, qui se veut un super hypercard, je pense qu'il en est de même).
Un nouveau produit vient d'apparaître, qui se présente comme comme un RAD (Rapid Application Developpement) descendant d'Hypercard. Il s'agit de Serf. ( www.best.com/~serf/)

- AppleScript vous permet d'automatiser de nombreux traîtements, dont ceux du Finder et de bien des applications. Il est fourni, avec l'éditeur idoine et un compilateur sur tous les Mac. Documentation vaste sur http://developer.apple.com/


5. ResEdit et Resorcerer

Ce sont deux éditeurs de ressources. Un programme Mac est composé du code-source et de ressources, qui composent l'interface et que l'on crée et manipule très facilement avec un éditeur de ressources, tel ResEdit ou Resorcerer (ou plus difficilement avec Rez, sous-ensemble de MPW ;-), avant d'assembler le tout avec un compilateur. Cela a pour avantage de faciliter grandement la conception, puis la réalisation et enfin la modification (ex. traduction en une autre langue) de l'interface.
ResEdit est gratuit. Vous le trouverez sur http://developer.apple.com/tools/
Resorcerer est lui un produit commercial, assez cher, mais bien plus complet et productif que ResEdit.

Pour les autres outils, pour avoir des avis de divers utilisateurs, consultez donc les forums fr.comp.sys.mac.programmation (en français) & comp.sys.mac.programmer (US) ou voyez ci-dessous. Le site www.realgurus.com se consacre uniquement à RealBasic. Lancez une recherche sur le Web dans un moteur de recherche. Voyez notammentwww.macsoftware.apple.com, un catalogue (non exhaustif) en ligne (en plusieurs langues dont le français) regroupant plus de 18000 produits pour Mac! (dont 3000 arrivés en 99!)

NB : Sur le CD d'Univers MacWorld nO90 de Mai 1999, sont présentes les démos et documentations de CodeWarrior, SuperCard, RealBasic, FutureBasic. Par ailleurs, si vous êtes novice dans l'art de programmer, lisez aussi le numéro 73 d'Univers Mac (12/97), vous y trouverez de nombreux conseils. Si Hypertalk, plus accessible que le C/C++, a vos préférences, c'est le numéro 79 (06/98) qu'il vous faut. Vous trouverez sur le CD le logiciel OpenStack, outil de programmation complet pour Hypercard (et Supercard?).

Voyez aussi Login (ex-Dream, ex-AmigaDream), cette excellente revue très technique sur l'informatique non Wintel s'est depuis quelques mois ouverte à MacOS X. (mensuel, vente en Kiosque, cf infra).

Si AppleScript et JavaScript, langages de macro-commandes interprété par des applications, vous intéressent, je vous invite à visiter le site de Danny Goodman (dannyg.com). Bien sûr la consultation du site d'Apple (www.apple.com/applescript/) vous sera aussi très utile et, si vous êtes novice, le numéro 80 d'Univers Mac (Juillet 98).

NB : Les logiciels ci-dessus ne sont pas les seuls outils de programmation pour MacOS. Citons par ex. : GNU C/C++ (gratuit), Visual Café (de Symantec, pour Java), ProFortran95 ou Fortran F77 d'Absoft (www.absoft.com), MacPerl… [Citons aussi, parmi les compilateurs trouvables mais aujourd'hui abandonnés : Symantec C++ (comparable à CodeWarrior, mais "limité" aux C et C++), Borland TurboPascal…]. Si je ne parle pas de tous les outils, c'est que je ne les connais pas tous. Sachez qu'il y en a encore d'autres, dont j'ai oublié les noms, et aussi pour d'autres langages (lisp, Python, etc.).


Pourquoi programmer? | Les outils | La documentation | Le problème du langage | Une astuce pour gagner du temps | La révolution MacOS X

La documentation


Pourquoi programmer? | Les outils | La documentation | Le problème du langage | Une astuce pour gagner du temps | La révolution MacOS X

Pourquoi le choix du langage de programmation n'est pas abordé

On peut lire tellement d'avis contradictoires à ce sujet — consulter un forum consacré à la programmation est à édifiant — pour s'apercevoir qu'il y un grand nombre de réponses possibles. De merveilleux programmes ont été écrits tant en assembleur, qu'en Basic, en Pascal, en C, en Prograph, en C++, en Java, avec Hypercard, avec 4D, etc.
Comment choisir alors? Si vous avez des ambitions multi-plateformes, certains langages sont plus portables que d'autres. Ainsi un assembleur est-il spécifique à un processeur. Le C++ est, lui, théoriquement multi-plateforme. Il ne faut pas croire pour autant qu'un programme écrit en C++ est facilement exécutable d'une machine à l'autre, s'il n'a pas été conçu en prévoyant cela (:-(ce qui allonge le temps de développement de façon parfois considérable, selon la nature du projet, car la norme ANSI ignore l'interface graphique, les API de Windows comme la Toolbox du Macintosh ou le recours à Gnome ou KDE). Par ailleurs, certains compilateurs sont multiplateformes, d'autres non. Seul la solution Java est quasi-universelle. Mais peu d'utilisateurs disposent d'un interpréteur performant. (Toutefois, pour que cela change, il suffirait que les programmes en Java donnent envie de s'équiper d'un interpréteur performant, la fameuse "machine virtuelle", laquelle est gratuite.)
Java présente un autre avantage, c'est un langage orienté objet considéré comme plus simple que le C++, il dispose de nombreux composants réutilisables (les Beans), un peu comme avec le regretté feu OpenDoc. Mais Java, langage interprété donne des applications lentes.
ObjectiveC et les API d'OpenStep sont aussi une excellente solution, très utile pour des projets multi-plateformes Unix/NT et (maintenant) Mac, d'autant plus que désormais MacOS X Server est en Open Source (et bientôt X "client" aussi) sous le nom de DarwinOS . Tout ceux qui ont essayé ObjectiveC, ProjectBuilder et InterfaceBuilder sont unanimes sur la facilté et la qualité du développement avec ces outils. Jan Stransky, (ex) directeur technique très compétent d'Apple France considère qu'une journée suffit à apprendre ObjectiveC, lorsqu'on maîtrise le C. (c'est le temps qu'il a mis, mais il est très fort. Comptons trois jours pour quelqu'un de plus moyen ;-) Après, bien des hésitations, Apple semble maintenant maintenir ces excellents outils venus de Next. La sortie prochaine de Mac OS X grand public 1 et Server 2 devrait clarifier encore ce soutien, auparavant bien faible. Ce qui est certain, c'est que les fantastiques API Cocoa du nouveau MacOS X, exigent ces outils hérités de Next (ProjectBuilder et InterfaceBuilder) et que la très grosse base installée des machines capables de recevoir MacOS X (G3 stations et powerbook, I Mac, G4, Ibook) justifie que l'on développe directement pour Cocoa en Objective C ou en Java (seuls langages possibles actuellement), dès lors que l'on crée un projet de zéro (pour une mise à jour de programmes pré-existants, Apple a créé les API Carbon, elles aussi intégrées à Mac OS X, 9, 8 et utilisables avec divers outils acceptant divers langages (renseignez-vous auprès de l'éditeur du compilateur qui vous tente).
Certains langages sont donc particulièrement adaptés à certains usages, d'autres non. On le voit, les critères de choix sont nombreux et souvent (hors le cas MacOS X-Cocoa) rien d'objectif ne permet de trancher favorablement pour un langage.
En fait, dessinez (avec un crayon ou un programme de dessin) l'interface graphique de votre projet, qui sera figée lorsque vous ne pourrez plus la simplifier, puis décortiquez dans ses moindres détails la logique et les ressources nécessaires à sa réalisation, enfin regardez les langages capables de le concrétiser et choisissez celui qui vous convient le mieux, avec lequel vous êtes le plus à l'aise. Cela me semble la meilleure façon de mener à bien un projet. Mais peut-être me trompe-je… ;-)

Astuces pour gagner du temps et écrire de bons programmes

Contrairement à ce que l'on pourrait penser, l'écriture du code est la phase la moins importante du développement d'un programme. Car même un spécialiste d'un langage ne pourra mener facilement à son terme l'écriture d'un programme dont la conception a été bâclée. Pour vérifier la cohérence d'un projet avant d'écrire la moindre ligne de code, il est important d'en rédiger l'aide auparavant et d'avoir défini précisément l'interface graphique, d'abord sur papier puis avec un éditeur de ressources (ResEdit ou Resorcerer). En procédant ainsi, vous vérifiez la pertinence de l'analyse des actions qu'effectue votre programme et vous simplifiez considérablement la phase d'ecriture du code-source. La consultation des Interface Guidelines d'Apple vous facilitera aussi grandement le travail et vous évitera bien des erreurs (et d'ailleurs Apple ferait parfois bien de relire ses propres travaux sur l'interface ;-). Si vous disposez d'utilisateurs novices, montrez-leur vos projets d'interfaces avant toute réalisation et ne retenez que les solutions qu'ils comprennent, éliminez ce qui leur pose des difficultés de compréhension.
Pourquoi programmer? | Les outils | La documentation | Le problème du langage | Une astuce pour gagner du temps | La révolution MacOS X

Retour à la page principale (Informatique, sous-section 1)

« La programmation, cela fait (parfois) mal au crâne, mais c'est aussi une source de plaisir (si, si! :-). Et cela est bien moins compliqué que ce que certains prétendent! Si cela ne vous paraît pas simple, c'est que votre professeur (livre ou primate) est mauvais. »

Page créée le 08/10/98 Mise-à-jour le 6/02/2001

Aloïs Durand alduran@XXXfree.fr (effacer les XXX antispam)

http://www.multimania.com/resister/   Sommaire GénéralAccueil