IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C Discussion :

Défi


Sujet :

C

  1. #81
    Expert éminent
    Avatar de Jedai
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2003
    Messages
    6 245
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2003
    Messages : 6 245
    Points : 8 586
    Points
    8 586
    Par défaut
    Si tu me dis exactement ce que tu souhaites faire comme suite pour gérer les tests, je peux peut-être te le faire en Perl, c'est tout de même un langage bien adapté pour ça.

    --
    Jedaï

  2. #82
    Membre confirmé Avatar de Lunixinclar
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2006
    Messages
    416
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 416
    Points : 489
    Points
    489
    Par défaut
    Perl oui super! (Python/shell/batch aussi)
    Mais besoin de l' interpréteur qui n'est pas installé par défaut sous win.
    L'avantage de faire la suite d' outils en C ANSI est sa portabilité, pour l'arbitre qui mesurera sur Win32. Pas forcémement moi. Et par extension on pourrait distribuer ces outils pour quiconque désire faire les tests sur sa propre machine.
    Qu'en penses-tu?


    Trois étapes distinctes:

    La première étape (préparation) consiste, pour chaque fichier C du dossier à:
    • extraire les infos, les formater et les ajouter à un fichier CSV,
    • compiler le prog
    • transformer le fichier source en fichier HTML (<- cet outil est prêt)


    La deuxième étape (mesure): pour chaque entrée du CSV,
    • identifier le nom de l' exécutable
    • lancer et mesurer 100 fois, isoler le temps le +lent et le + rapide
    • faire la moyenne des 100 et compléter la ligne du CSV en lui ajoutant |moyenne|+rapide|+lent|CPU|Mem


    La troisième étape (présentation)(cet outil est prêt): transformer le CSV en HTML. A cet effet, parcourir le CSV pour:
    • identifier les maximas et minimas qui apparaitront en vert ou en rouge dans le tableau final
    • Formater les données CSV en cellule de table HTML
    • Créer un graphique sous forme d' image jpg

  3. #83
    Membre averti
    Avatar de Foobar1329
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    283
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Juin 2006
    Messages : 283
    Points : 387
    Points
    387
    Par défaut
    Citation Envoyé par Lunixinclar
    Perl oui super! (Python/shell/batch aussi)
    Mais besoin de l' interpréteur qui n'est pas installé par défaut sous win.
    L'avantage de faire la suite d' outils en C ANSI est sa portabilité, pour l'arbitre qui mesurera sur Win32. Pas forcémement moi. Et par extension on pourrait distribuer ces outils pour quiconque désire faire les tests sur sa propre machine.
    Qu'en penses-tu?


    Trois étapes distinctes:

    La première étape (préparation) consiste, pour chaque fichier C du dossier à:
    • extraire les infos, les formater et les ajouter à un fichier CSV,
    • compiler le prog
    • transformer le fichier source en fichier HTML (<- cet outil est prêt)


    La deuxième étape (mesure): pour chaque entrée du CSV,
    • identifier le nom de l' exécutable
    • lancer et mesurer 100 fois, isoler le temps le +lent et le + rapide
    • faire la moyenne des 100 et compléter la ligne du CSV en lui ajoutant |moyenne|+rapide|+lent|CPU|Mem


    La troisième étape (présentation)(cet outil est prêt): transformer le CSV en HTML. A cet effet, parcourir le CSV pour:
    • identifier les maximas et minimas qui apparaitront en vert ou en rouge dans le tableau final
    • Formater les données CSV en cellule de table HTML
    • Créer un graphique sous forme d' image jpg
    Bon, ca y est pour le programme en C.
    Par contre une chose m'a chagriné, c'est le commentaire //, tout le monde n'a pas de compilateur C99 aware, donc j'ai pris en compte le commentaire simple ligne C90 (enfin, la fin) (ca marche aussi avec // de toutes façons) :

    /* Auteur:aaa */
    /* Plateforme:bbb */
    /* Compilateur/version:ccc/ddd */

    A+
    Fichiers attachés Fichiers attachés

  4. #84
    Membre émérite
    Avatar de Ti-R
    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Avril 2003
    Messages
    1 683
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 683
    Points : 2 568
    Points
    2 568
    Par défaut
    Il suffirait simplement de l'auteur non ?

    Car si le programme est recompiler sur une plateforme X avec un compilateur X au final....

    Non ?

  5. #85
    Membre confirmé Avatar de Lunixinclar
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2006
    Messages
    416
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 416
    Points : 489
    Points
    489
    Par défaut
    Citation Envoyé par Foobar1329
    Bon, ca y est pour le programme en C.
    Par contre une chose m'a chagriné, c'est le commentaire //, tout le monde n'a pas de compilateur C99 aware, donc j'ai pris en compte le commentaire simple ligne C90 (enfin, la fin) (ca marche aussi avec // de toutes façons) :

    /* Auteur:aaa */
    /* Plateforme:bbb */
    /* Compilateur/version:ccc/ddd */

    A+
    Beau boulot Foobar1329.
    C'est noté pour les commentaires /* */.
    Ca te dit d'ajouter une fonction qui lance un process sur GCC ou VC++ ? Si tu veux pas c'est pas grave

  6. #86
    Membre expérimenté
    Avatar de granquet
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    1 201
    Détails du profil
    Informations personnelles :
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 201
    Points : 1 421
    Points
    1 421
    Par défaut
    on ne sais toujours pas comment soumettre le code

    -un commit sur un svn ... ce serait ptetre un peu du luxe (j'ai un repos SVN a la maison mais bon ... faut pas trop lui en demander) ...
    -mettre des pieces jointes sur le forum ... c'est ptetre pas tres pratique pour l'organisateur.
    -un acces ftp quelque part histoire de deposer nos sources, c'est ptetre la solution a court terme la plus envisageable.

    alors? comment on fait?
    click my www
    ............|___
    ...................\
    .................._|_
    ..................\ /
    ..................."

  7. #87
    Membre confirmé Avatar de Lunixinclar
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2006
    Messages
    416
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 416
    Points : 489
    Points
    489
    Par défaut
    Pour déposer les sources, le forum est bon, transparent: on sait qui a fait quoi et quand. Facile à télécharger ou à éditer. C'est mieux que par mail non?

    Youpi. C'est tout bon. Un double-clic et tada! Le premier vrai test donne ... <traaaaadadadadraaa tambours> RESULTATS

    Maintenant que la moulinette est terminée, je passe du temps à analyser vos codes, faut dire que ya des pros.
    On peut accueillir 2000 participants à présent Sans limite de temps oki?

    C'est vraiment génial. Chapeau les gars.

  8. #88
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 73
    Points : 24
    Points
    24
    Par défaut
    Bonjour ! Je voulais justement participer mais c'est déja fini et j'ai pas DU TOUT le niveau !
    Alors je demande svp a Dark Ebola de m'expliquer son code si il veut bien please !
    merci d'avance a+

  9. #89
    Membre émérite
    Avatar de Ti-R
    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Avril 2003
    Messages
    1 683
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 683
    Points : 2 568
    Points
    2 568
    Par défaut
    Ce n'est pas fini

    On est la pour le fun

    Tente un truc !

  10. #90
    Membre expérimenté
    Avatar de granquet
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    1 201
    Détails du profil
    Informations personnelles :
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 201
    Points : 1 421
    Points
    1 421
    Par défaut
    haben c'etait juste pour dire que j'ai un deuxieme 'jet' (qui gere les a href et les img src), je pense pas l'ameliorer de si tot, donc je submit (et puis on avait dis une semaine ).

    -par contre, j'utilise dans cette nouvelle version un bit field (histoire de rentre le code un peu plus clair ...), je sais que ça peux poser des problemes de portabilité ... si jamais ça pose un probleme je peux arranger ça. (mais du coup c'est moins lisible)

    sinon lapras, mon code est tres simple, je vais tacher de commenter la nouvelle version.

    rapidement:
    -la variable counter sert a compter les lettres dans un mot, la variable wcounter me permet de savoir quelle est la position du mot dans la balise.
    -refs me permet de faire des comparaisons pour les chaines de char a reconnaitre

    dans ma structure:
    balise : compte le nombre de balises ouvertes
    quote : etat "dans un commentaire" ou pas. (0 pas de commentaire, 1 commentaires)
    type: permet d'identifier le type de balise: 0: type indeterminé 1: balise <IMG 2: balise <A
    href: as-t'on reperé le chaine href? (0: non 1: oui)
    src: as-t'on reperé la chaine src (0: non 1: oui)
    print: doit on afficher le caractere courant? (0: non 1: oui)

    avantage de ce code: fonctionne char par char, aucune limite liée a un buffer ou a la memoire.
    inconveniant: peut etre long, traitement de chaque char individuellement, pas de "saut" a la prochaine balise possible

    mon conseil: je debute en C (suis un etudiant passioné par l'informatique, pas un pro), attend de voir d'autres submissions comme celles de David.Schris
    Fichiers attachés Fichiers attachés
    click my www
    ............|___
    ...................\
    .................._|_
    ..................\ /
    ..................."

  11. #91
    Membre éprouvé

    Profil pro
    Inscrit en
    Août 2003
    Messages
    878
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2003
    Messages : 878
    Points : 1 067
    Points
    1 067
    Par défaut
    Citation Envoyé par Dark_Ebola
    mon conseil: je debute en C (suis un etudiant passioné par l'informatique, pas un pro), attend de voir d'autres submissions comme celles de David.Schris
    Oula ! Non, pas moi malheureux ! (faut pas vendre la peau de l'ours avant de l'avoir tué !)
    Un problème bien exposé
    est, pour moitié, solutionné. / La connaissance s'accroît quand on la partage, pas quand on l'impose. / La violence est le langage des faibles.

  12. #92
    Membre émérite
    Avatar de Ti-R
    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Avril 2003
    Messages
    1 683
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 683
    Points : 2 568
    Points
    2 568
    Par défaut
    Bon avant que j'oublie, je poste mon code

    Par contre, un truc bizarre dans le constest, c'est qu'on suppose qu'on lance un exe pour parser chaque page....

    Alors que dans un vrai moteur, seul la fonction parse serait appelée pour chaque page. Donc on pourrait optimiser niveau mémoire le tout. Et juste compter le temps réel de traitement de la page, sans inclure le temps d’allocation mémoire des divers éléments.


    J’ai commenté StartQuantify() et StopQuantifyWindows() ainsi que l’affichage du nombre de liens.

    Je pense pourvoir encore optimiser le tout, mais bon, cela serait de l’ordre du ridicule… je pense 1 ou 2 ms sur wblnks.html

    [EDIT]
    Limitation:
    Ne tiens pas compte de balise "script"
    Cas fonctionnel
    Cas non fonctionnel
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    < A
    href = "
    href ="
    href= "
    [/EDIT]

    [EDIT2]
    Ce n'est sûrement pas le plus propre des codes (toutes les erreurs ne sont pas gérées), mais je voulais quelque chose de rapide, avec quelque chose d'élégant (de mon point de vu, tout est relatif ) via appel de fonction.
    [/EDIT2]
    Fichiers attachés Fichiers attachés

  13. #93
    Membre averti
    Avatar de Foobar1329
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    283
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Juin 2006
    Messages : 283
    Points : 387
    Points
    387
    Par défaut
    Hello,

    Citation Envoyé par Lunixinclar
    Pour déposer les sources, le forum est bon, transparent: on sait qui a fait quoi et quand. Facile à télécharger ou à éditer. C'est mieux que par mail non?

    Youpi. C'est tout bon. Un double-clic et tada! Le premier vrai test donne ... <traaaaadadadadraaa tambours> RESULTATS

    Maintenant que la moulinette est terminée, je passe du temps à analyser vos codes, faut dire que ya des pros.
    On peut accueillir 2000 participants à présent Sans limite de temps oki?

    C'est vraiment génial. Chapeau les gars.

    Bouh, j'suis dernier !


    A+

  14. #94
    Expert éminent
    Avatar de Jedai
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2003
    Messages
    6 245
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2003
    Messages : 6 245
    Points : 8 586
    Points
    8 586
    Par défaut
    J'ai légèrement modifié le code de mon parser (il y avait quelques erreurs graves...), il ne devrait plus louper grand chose désormais, et il ne devrait plus détecter les liens dans les scripts. (A vrai dire il y a encore des documents qu'il n'arrive pas bien à parser, par exemple avec des CDATA, mais il est déjà bien meilleur qu'il ne l'a été).

    Par ailleurs ça serait bien également que les parsers donnent des résultats corrects sur un maximum de pages. Le plus simple ce serait d'utiliser un parser HTML bien établi pour générer une liste des liens correspondant à nos critères, trier les listes de liens des deux côtés (parce que les "vrais" parsers donnent parfois les liens dans l'ordre de fermeture des éléments) et faire un diff. C'est ce que je me suis fait pour tester chez moi, et ça permet de vite repérer les problèmes.
    Je mets mon parser "officiel" Perl juste pour donner une idée (parce que je suppose que vous voudrez le refaire en C... ) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
     
    #! /usr/bin/perl
    use strict;
    use warnings;
     
    use HTML::LinkExtractor;
     
    my $html = do {
        local $/;
        <>;
    };
     
    my $LX = new HTML::LinkExtractor(
            sub {
                my (undef, $info) = @_;
                print $info->{src}, "\n" 
                    if $info->{tag} =~ m/img/i and defined $info->{src};
                print $info->{href}, "\n" 
                    if $info->{tag} =~ m/a/i and defined $info->{href};
            }
        );
     
    $LX->parse(\$html);
     
    __END__
    [EDIT] J'ai encore corrigé une erreur (du coup les CDATA passe un peu mieux, bien que ce soit juste de la récupération d'erreur...)
    --
    Jedaï
    Fichiers attachés Fichiers attachés

  15. #95
    Expert éminent
    Avatar de Jedai
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2003
    Messages
    6 245
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2003
    Messages : 6 245
    Points : 8 586
    Points
    8 586
    Par défaut
    J'ai essayé les derniers codes des participants sur un certain nombre d'exemples du "monde réel" (principalement ceux donnés par David.Schris), et les résultats sont assez divers. Le plus proche d'un sans faute est Foobar1329, mais il y a encore quelques petits problèmes. Ensuite vient Ti-R, pas très loin de Foobar1329. Puis Dark_Ebola, qui manque beaucoup plus de lien, entre autre sans doute parce qu'il se limite à une seule casse, qui n'est d'ailleurs probablement pas la plus répandue sur internet.
    En résumé, il serait préférable que tous les parsers détectent à peu près la même quantité de liens avant qu'on compare leur vitesse parce que comparer la vitesse de deux logiciels ne faisant pas la même chose n'est pas très intéressant...

    --
    Jedaï

  16. #96
    Membre émérite
    Avatar de Ti-R
    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Avril 2003
    Messages
    1 683
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 683
    Points : 2 568
    Points
    2 568
    Par défaut
    Je suis d'accord, mais Lunixinclar à posé des règles sur son concours :p

    Faut lui demander....

  17. #97
    Membre confirmé Avatar de Lunixinclar
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2006
    Messages
    416
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 416
    Points : 489
    Points
    489
    Par défaut
    Jedai si tu peux t'occuper de la validité des algos c'est super. Dès qu'un code est validé par toi je l'ajoute aux autres et relance les mesures.
    Notez que plus la page de test est grande, plus les écarts se creusent entre les algos.


    Alors c'est reparti pour la discussion sans fin:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
     
    <A HREF = "url">
    <A HREF ="url">
    <A HREF= "url">
    <A HREF="url">
     
    <A HREF = 'url'>
    <A HREF ='url'>
    <A HREF= 'url'>
    <A HREF='url'>
     
    <A HREF=url>
     
    <IMG SRC = "url">
    <IMG SRC ="url">
    <IMG SRC= "url">
    <IMG SRC="url">
     
    <IMG SRC = 'url'>
    <IMG SRC ='url'>
    <IMG SRC= 'url'>
    <IMG SRC='url'>
     
    <IMG SRC=url>
     
    Doubler ça pour les attributs en minuscules.
    Sans parler des tabulations. Espaces et tabulations peuvent être multiples.
     
    Et ceux-ci pointés par Pirus:
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
    <head profile="http://www.w3.org/2000/08/w3c-synd/#">
    <link rel="stylesheet" type="text/css" href="/StyleSheets/home.css" />
     
    Et celui-ci de gege:
    <a class="" href=niveau_4>OK</A>
     
    Et celui-ci de David:
    <a href=url1 onclick=\"alert('<a href=urlPIEGE>')\">"
     
    Est-ce qu'il faut prendre en compte les commentaires HTML?
    Et Les scripts?
    Et la norme HTML 4.01?
    Et le XHTML?
     
    Attends ça c'était la mise en bouche avant d'aborder la question du 'IMG SRC', etc, etc...
    Prendre en compte une multitude de cas va alourdir les algos, ils seront durs à comparer entre eux. C'est LePras qui veut écrire un bot. Nous on veut comparer des algos. Les mesures passent après. Sinon télécharger la source de Firefox ou Lynx copier/coller ce qui va bien et basta vive l' Open-Source!


    La seule chose qu' impose le bon sens pour le défi est de repérer le <A HREF="url"> et rien d' autre. En majuscules et avec espaces entre le '=', et rien qu'avec des guillemets.
    Pratique: c'est ce qu'exporte Firefox. Faites-moi passer pour un dictateur.
    Si on ne réussit pas à s'accorder là-dessus, chacun va écrire son bot perso avec au final le néant commun, un tableau final assez vide, des temps de développement incroyables, des algos de 1000 lignes de code, des contraintes si dures que personne ne participera, et des mesures faussées.


    Ca serait bien d'accorder nos violons assez rapidement pour faire une annonce dans un forum général. Une chose est sûre: les outils de mesure sont OK et ils sont portables.

  18. #98
    Membre expérimenté
    Avatar de Gruik
    Profil pro
    Développeur Web
    Inscrit en
    Juillet 2003
    Messages
    1 566
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 566
    Points : 1 727
    Points
    1 727
    Par défaut
    Citation Envoyé par Lunixinclar
    La seule chose qu' impose le bon sens pour le défi est de repérer le <A HREF = "url"> et rien d' autre. En majuscules et avec espaces entre le '=', et rien qu'avec des guillemets.
    Je suis pas d'accord avec les espaces.. je suis pas sur, mais meme les navigateurs super laxistent ne le blaireraient pas, c'est comme le coup du <(espace)a href.
    Autant j'ai deja vu des <a href=url> autant j'ai jamais vu de <a href = url>

  19. #99
    Expert éminent
    Avatar de Jedai
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2003
    Messages
    6 245
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2003
    Messages : 6 245
    Points : 8 586
    Points
    8 586
    Par défaut
    Citation Envoyé par Gruik
    Je suis pas d'accord avec les espaces.. je suis pas sur, mais meme les navigateurs super laxistent ne le blaireraient pas, c'est comme le coup du <(espace)a href.
    Autant j'ai deja vu des <a href=url> autant j'ai jamais vu de <a href = url>
    Moi j'ai déjà vu des <a href=\n"url"> ... Les navigateurs gèrent ça sans problème, et je ne suis même pas sûr que la norme l'interdise.

    Prendre en compte une multitude de cas va alourdir les algos, ils seront durs à comparer entre eux. C'est LePras qui veut écrire un bot. Nous on veut comparer des algos. Les mesures passent après. Sinon télécharger la source de Firefox ou Lynx copier/coller ce qui va bien et basta vive l' Open-Source!

    La seule chose qu' impose le bon sens pour le défi est de repérer le <A HREF = "url"> et rien d' autre. En majuscules et avec espaces entre le '=', et rien qu'avec des guillemets.
    Pratique: c'est ce qu'exporte Firefox. Faites-moi passer pour un dictateur.
    Si on ne réussit pas à s'accorder là-dessus, chacun va écrire son bot perso avec au final le néant commun, un tableau final assez vide, des temps de développement incroyables, des algos de 1000 lignes de code, des contraintes si dures que personne ne participera, et des mesures faussées.
    Eh, c'est pas vrai, mon algo fais moins de 300 lignes de code et gère pratiquement tous les cas (j'ai pas encore réussi à le mettre en défaut, je parle de la dernière version bien sûr) !
    Bon je suis d'accord que ça risque de restreindre le nombre d'entrée si on oblige à prendre en compte trop de cas, mais on pourrait tout de même rajouter un bref descriptif des capacités de son parser, non ?

    Je peux me charger de vérifier cela de mon côté (j'ai les scripts qu'il faut pour ça).

    Et si je dis ça c'est pas juste parce que le parser de Ti-R nous atomise tous (2 fois plus rapide que le mien !), nonnon...

    (Et pis c'est encore mieux si le parser est utilisable non ?)

    --
    Jedaï

  20. #100
    Membre émérite
    Avatar de Ti-R
    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Avril 2003
    Messages
    1 683
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 683
    Points : 2 568
    Points
    2 568
    Par défaut
    Oui, mais j'ai bien précisé que mon parser était taillé pour la vitesse, spécialement pour le concours...
    Il fera des débordements de mémoire sur des urls plus grande que 512.
    Et comme précisé avant, les balises « script » sont inconnus au bataillon....

Discussions similaires

  1. Défi Septembre 2004
    Par grishka dans le forum XSL/XSLT/XPATH
    Réponses: 30
    Dernier message: 26/12/2005, 18h37
  2. [défi n°1] limite de javascript en calcul?
    Par javatwister dans le forum Général JavaScript
    Réponses: 30
    Dernier message: 20/08/2005, 16h02
  3. Somme totale... Défi !
    Par mattmat dans le forum XSL/XSLT/XPATH
    Réponses: 7
    Dernier message: 04/08/2005, 22h03
  4. Défi
    Par ti-ben dans le forum Algorithmes et structures de données
    Réponses: 16
    Dernier message: 03/02/2005, 07h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo