• [^] # Re: on est en 2009 ...

    Posté par . En réponse à la dépêche Mandriva Linux 2010.0 disponible en version Bêta. Évalué à 4.

    Je suis loin d'être un spécialiste, mais de ce que j'en vois, son truc marche, mais est complètement sous-optimal.

    D'un point de vue mémoire, il nécessite de convertir une chaîne en '1' * n, donc ça prend n octets en mémoire, sans compter la mémoire prise par le moteur de regexp. Autant dire que c'est impraticable dès qu'on travaille avec des nombre intéressants.

    D'un point de vue CPU, ce qu'il fait revient à tester si n est divisible par 2, 3, 4, ..., n - 1, ce qui n'est n'est déjà pas optimal, et utilisant des comparaisons de chaînes pour effectuer des divisions, donc encore plus sous-optimal.

    Au final, mon avis c'est que c'est pas utilisable dans un vrai programme, mais que c'est assez amusant intellectuellement parlant, parce qu'il fait des opérations « complexes » (itération et divisions) en utilisant un langage qui ne contient que très peu de primitives.