Jean-Yves B. a écrit 873 commentaires

  • [^] # Re: ERCIM et les brevets

    Posté par  . En réponse à la dépêche Hôte européen du W3C : après l'INRIA, c'est l'ERCIM. Évalué à 0.

    C'est pas gagné, vu la volonté anti-brevet de l'INRIA et des gros pontes planqués derrière chaque organisation un peu européenne ... le pognon c'est comme la coke, on dirait.
  • [^] # Re: Si j'ai bien tout compris

    Posté par  . En réponse au journal Si j'ai bien tout compris. Évalué à 1.

    Oui une pile avec comme conteneur un tableau, aucun problème.
    Donc si tu t'en fous d'accéder à la partie "tableau" tu déclares la variable comme une pile et tu y met une instance de ARRAYED_STACK. Et voilou.
    Le fait que si la variable a comme type statique ARRAYED_STACK on puisse violer la sémantique de STACK avec array_put, etc. est normal, c'est le contrat. Une ARRAYED_STACK n'est pas une STACK ni un ARRAY, c'est une ARRAYED_STACK. Pour avoir une vraie STACK dont le contenu est géré en tableau, il faut soit un type statique STACK soit en faire rouler une avec un ARRAY comme conteneur privé si tu veux être sûr.
    En tous cas, ce type de construction (ARRAYED_STACK) ne me choque pas du tout, la plupart de mes cours cours de POO étaient autour de structures comme celle-ci (bon, en autres profs j'avais D. Colnet, un des auteurs de SmallEiffel, donc forcément ayant appris comme ça ne me choque pas).

    La logique du truc c'est que si tu veux une ARRAYED_STACK ayant un comportement uniquement de STACK vis à vis d'autres (notamment du cas dont tu parles) il faut lui foutre comme type statique STACK et comme type dynamique ARRAYED_STACK en instanciant avec !ARRAYED_STACK[G]!. C'est la méthode classique utilisée très souvent dans des libs Eiffel.
  • [^] # Re: Si j'ai bien tout compris

    Posté par  . En réponse au journal Si j'ai bien tout compris. Évalué à 1.

    On s'y fait. ISE eiffel est super bien foutu (le compilo en ligne de commande, pas l'IDE). Ce qui est chiant c'est que je n'ai pas pratiqué depuis le mois de mars et que les petits détails partent vite :(
  • [^] # Re: Si j'ai bien tout compris

    Posté par  . En réponse au journal Si j'ai bien tout compris. Évalué à 1.

    Bon, en fait je me relis et je ne me comprends pas, c'est mauvais signe :)

    Le bout de code Mal correspond à un code où l'on désire explicitement que s soit accessible en tant qu'array et que stack sous la forme d'une arrayed_stack. Avec le bout de code Bien, on montre explicitement que l'on désire que s soit une pile, accessoirement une pile gérée dans un tableau _mais_ c'est un détail qui ne doit pas transparaitre à l'extérieur.

    En fait, c'est au programmeur de savoir ce qu'il veut.
    Pour limiter la remontée dans l'arbre d'héritage il faut fixer le type de la variable, c'est tout. À moins de tricher (ce qui n'est pas toujours possible) il n'est pas possible de remonter l'arbre comme ça.
    Pour se protéger encore plus, il faut passer par un intermédiaire, c'est tout (pattern proxy).

    Bon, sinon je ne vois pas pourquoi foutre un ARRAY_STACK[G] dans un COLLECTION[ARRAY[G]] mettrais le souk ?
    s : ARRAYED_STACK[G]
    a : ARRAY[G]
    c : COLLECTION[ARRAY[G]]
    --
    a := s
    c.put(a)
    --
    Et donc
    c.item est de type ARRAY[G]
    s est de type ARRAYED_STACK[G]

    Où est le problème ? En posant le type de s à ARRAYED_STACK, on demande explicitement à ce que la pile soit accessible des deux manières, c'est ainsi. En modifiant c on modifie la structure de la pile s, et alors ? C'est voulu dans le code ! Normalement, c devra quand même respecter les assertions (l'invariant notamment) de s donc en théorie il ne devrait même pas y avoir de casse ...
    Bon, il faut absolument que je déterre un compilo eiffel pour vérifier ... grmbl.
  • # Re: Ouaurde...

    Posté par  . En réponse au journal Ouaurde.... Évalué à 2.

    Pas d'accord, excel® c'est pas mal du tout. C'est LA killer app de MS Office, le seul truc qui aie un intérêt.
  • [^] # Re: Si j'ai bien tout compris

    Posté par  . En réponse au journal Si j'ai bien tout compris. Évalué à 1.

    Ah non pas du tout, si le type mis entre !! n'est pas ramenable à STACK, ça ne fonctionne pas, et à l'exécution ça ne sera manipulable que comme une stack (un bourrin pourra tenter de forcer en arrayed_stack mais c'est Mal®). Les assertions seront vérifiées, etc. comme d'hab.
    Si s est de type STACK[OURS], je ne peux pas instancier s comme !ARRAYED_STACK[VACHE]! ou !ARRAYED_STACK[ANY]!, juste comme !ARRAYED_STACK[G -> OURS]! (si on peut dire).
    La vérification de type n'est pas supprimée du tout, au contraire. En déclarant s comme ARRAYED_STACK, par contre, on veut montrer que s sera accéder en tant que ARRAYED_STACK, pas comme STACK du coup il est nromal d'avoir accès à la structure tableau. Si on ne veut pas ça, on déclare s comme STACK et puis c'est tout, le type non abstrait utilisé n'entre pas en ligne de compte dans la vérif de type, l'interface est celle d'une STACK et rien de plus.

    Bref, l'exemple correspond aussi au style de porgrammation préconisé dans Eiffel, the language et autres de ses bouquins :

    s : ARRAYED_STACK[PLOP]
    do
    create s.make
    -- Mal®

    s : STACK[PLOP]
    do
    !ARRAYED_STACK[PLOP]!s.make
    -- Bien©

    Juste mes 2.10-2 EUR (et mon cours de poo de d.colnet).
  • [^] # Re: Si j'ai bien tout compris

    Posté par  . En réponse au journal Si j'ai bien tout compris. Évalué à 1.

    Après réflexion c'est vrai que le type est forcé en ARRAY[G] ... il doit y avoir un truc, ça m'étonnerait que ça soit innocent.
    s est déclarée comme STACK[G], ça se fait comme ça :

    plop is
    local
    s : STACK[G]
    do
    !ARRAYED_STACK[G]!s.make
    -- ou autre syntaxe avec create
    end -- plop

    L'arrayed stack est un détail d'implantation, c'est sensé être utilisé avec une sémantique STACK et quand on code en eiffel on pose pour les variables un type "générique", plus comportemental qu'orienté implantation.
    Dans ce cas, je ne peux pas ramener s à un ARRAY[WHATEVER]. Peut-être avec des typage dégueux à base de ?= (c'est ça, non ?) mais là c'est du gruïkage donc bon, c'est normal de tout faire foirer.

    Bref, ça ne me viendrais pas à l'idée de déclarer une variable en tant qu'ARRAYED_STACK en dehors d'ARRAYED_STACK.
  • # Re: Enfin !

    Posté par  . En réponse au journal Enfin !. Évalué à 1.

    \o/ Ouééé !
    Ça fait bizarre de surfer sur ce site sans voir de gros pans qui disparaissent en passant sur les liens :)
    C'est toujours du code de merde en revanche ... en être rendu à foutre du javascript pour simuler l'effet d'un lien de base je trouve ça très très con (le lien vers le site bouygtel en bas à droite de 6sens.com, sans doutes entre autres).
  • # Re: Si j'ai bien tout compris

    Posté par  . En réponse au journal Si j'ai bien tout compris. Évalué à 1.

    Il faudrait que je m'installe un chtit compilo eiffel pour tester mais je doute que ton s puisse être passé en array avec des méthodes redéfinies et surtout un export none du reste ... en tout cas que ça passe sans casse.
    Si mes souvenirs sont bons les redéfinitions de méthodes ne sont pas shuntées en tentant de remonter l'arbre d'héritage donc put n'aura pas le bon profil (pour une stack put est du genre put(item : like G)).
  • [^] # Re: Mplayer capable de faire tourner emacs

    Posté par  . En réponse à la dépêche Mplayer capable de faire tourner emacs. Évalué à 1.

    M-x play-sound-file

    (avec XEmacs)
  • [^] # Re: Se connecter à Internet du bout du monde

    Posté par  . En réponse à la dépêche Se connecter à Internet du bout du monde. Évalué à 2.

    Reuters : Bayer Pharmaceutics se prend un procès pour concurrence déloyale par la Cogema AREVA.
  • [^] # Re: Les sites publics (gouvernementaux) français pas au normes W3C

    Posté par  . En réponse à la dépêche Les sites publics (gouvernementaux) français pas aux normes W3C. Évalué à -1.

    fake ?
  • [^] # Re: Re:

    Posté par  . En réponse à la dépêche ALTQ et PF ont mergé. Évalué à 2.

    <pinaille>[...] viennent de fusionner</pinaille> :)
  • [^] # Re: Se connecter à Internet du bout du monde

    Posté par  . En réponse à la dépêche Se connecter à Internet du bout du monde. Évalué à 3.

    News AFP : EDF rachète les clubs moving' et peut ainsi fermer deux centrales thermiques ...
  • [^] # Re: un jeu 64 bits...

    Posté par  . En réponse à la dépêche UT2003 64 bits porté sous Linux. Évalué à -1.

    Tant qu'on est dans le cambouis, Intel et AMD font toujours le concours idiot du plus long pipeline ? Qui est-ce qui pisseurine le plus loin pour l'instant ? (en bousillant la latence)
  • [^] # Re: Les sites publics (gouvernementaux) français pas au nomres W3C

    Posté par  . En réponse à la dépêche Les sites publics (gouvernementaux) français pas aux normes W3C. Évalué à 2.

    Spécial dédicace à Maurice Grevisse tant qu'on y est.

    D'ailleurs, à quand une édition du « Bon usage », du Bescherelle ou du Littré offerte aux auteurs des dépêches au pires fautes de français ? :)
  • [^] # Re: Les sites publics (gouvernementaux) français pas au normes W3C

    Posté par  . En réponse à la dépêche Les sites publics (gouvernementaux) français pas aux normes W3C. Évalué à 1.

    Ah bon ? IPv6 est compatible IPv4 ?

    Il y a des guidelines pour une interconnexion sans douleur mais tu ne peux pas comparer le passage de HTML4 à XHTML avec le passage de IPv4 à IPv6, ces derniers sont plus à comparer avec un passage ethernet 10baseT à ethernet 1000baseFX.
  • [^] # Re: un jeu 64 bits...

    Posté par  . En réponse à la dépêche UT2003 64 bits porté sous Linux. Évalué à 3.

    L'important dans l'opteron/Athlon 64, c'est surtout un doublement du nombre de tous les registres.

    Ouais, on la lance quand la pétition/collecte de fonds pour libérer le source du compilo C/C++ de DEC sur Alpha ? Parce que gcc, la soupe aux registres ...

    [-1, appel au troll]
  • # Perfs ?

    Posté par  . En réponse à la dépêche ALTQ et PF ont mergé. Évalué à 4.

    Je me demande si les perfs seront au rendez-vous (j'espère). Ce serait dommage de bousiller les perfs de pf qui sont plutôt élevées ! (je suppose que de toutes façons altq pourra être rendu optionnel).

    Maintenant il va falloir porter le wondershaper pour altq :)
  • [^] # Re: Les sites publics (gouvernementaux) français pas au nomres W3C

    Posté par  . En réponse à la dépêche Les sites publics (gouvernementaux) français pas aux normes W3C. Évalué à 6.

    Aaah les bons vieux intégristes du site identique au pixel près ... c'est pas mal ça aussi. Un jour les webmaster/designers comprendront que pour pouvoir être qualifiés d'artistes il faut aussi savoir jouer dans les limites du média. Il est vrai que sur le web on peut facilement contourner les limites mais ce n'est pas une raison. « On me prive de ma créativité » n'est pas une raison non plus, les limites de la toile et de la peinture à l'huile n'ont jamais empêché de faire des peintures sublimes.

    Bref, de bons liens au sujet du pourquoi du comment des normes : http://webstandards.org/(...)
    et un site pour les webdesigners qui ont des couilles/ovaires de bronze tout en respectant au maximum les standards : http://alistapart.com/(...)
    (je vais probablement me faire huer par glandium pour le second lien ;) )
  • [^] # Re: Donneurs de leçon

    Posté par  . En réponse à la dépêche Les sites publics (gouvernementaux) français pas aux normes W3C. Évalué à 3.

    Ma foi, voilà du foutage de gueule de qualité®. Ce qu'ils omettent de dire c'est que souvent ils achètent des « solutions » clefs en main d'édition sur internet et que les templates de base sont dégueux. Un peu comme frontpage ou dreamweaver qui génère du code crado (pour dreamweaver ça s'améliore).

    Pff, des « solutions » ... encore le meilleur moyen d'augmenter les problèmes ...
  • # Va falloir une photo là ...

    Posté par  . En réponse au journal Avis de recherche. Évalué à 0.

  • [^] # Re: Les logiciels libres

    Posté par  . En réponse au journal Les logiciels libres. Évalué à 1.

    Bien sûr que si, c'est la mère de tous les trolls.
  • [^] # Re: G un gro blem avek linusk

    Posté par  . En réponse au journal G un gro blem avek linusk. Évalué à 1.

    Au royaume des aveugles les borgnes sont mal vus.
  • [^] # Re: got it! planted it!

    Posté par  . En réponse au journal got it! planted it!. Évalué à 1.

    C'est un truc sensé permettre à bouygtel de se faire de la thune pour payer une licence umts et aider ses potes jap fabriquants de mobiles à entrer plus facilement sur le marché européen. Pour l'utilisateur final, ça ne sert à rien mais c'est hype.