Obsidian a écrit 5313 commentaires

  • [^] # Re: Pourquoi ?

    Posté par  . En réponse au journal Le respect des licences. Évalué à 4.

    Cela dit, s'il arrivait à les convaincre, on aurait quand même la paix pour un bout de temps…

  • [^] # Re: Oula plein de chose dans le poste

    Posté par  . En réponse au message L'opérateur unaire * me laisse perplexe (pointeurs sur fonctions principalement). Évalué à 3.

    Non, c'est pareil, malloc retourne un void, et donc le compilo gueulerait disant que tu associe un void à ton pointeur de tableau qui est de type pf. Le cast (pf)malloc dis au compilo que tu sait ce que tu fais et que le void* est comme un pf* (on appelle ça transtypage d'une variable).

    Dans ce cas précis, c'est inutile. Le compilateur ne se plaint jamais lorsqu'on affecte un pointeur void vers un pointeur d'un type quelconque et vice-versa. C'est vrai au moins en C99. Ça semble être aussi le cas en C89 mais je ne dispose pas du document correspondant :

    Extrait de n1256

    6.5.4 Cast operators
    1. […]
    2. […]
    3. Conversions that involve pointers, other than where permitted by the constraints of
    6.5.16.1, shall be specified by means of an explicit cast.

    6.5.16.1 Simple assignment
    Constraints
    One of the following shall hold:
    — […]
    — […]
    — […]
    — one operand is a pointer to an object or incomplete type and the other is a pointer to a
    qualified or unqualified version of void, and the type pointed to by the left has all
    the qualifiers of the type pointed to by the right;

  • [^] # Re: à l'assaut de Microsoft maintenant !

    Posté par  . En réponse à la dépêche Le standard C++0x a enfin été voté. Évalué à 7.

    Je ne vois pas le rapport (à part le temps que mettra Visual C++11 à respecter entièrement la norme, mais bon…)

  • [^] # Re: proposition lowcost

    Posté par  . En réponse au journal Nom de geek pour une chatte ?. Évalué à 9.

    Voire même lolcathost…

  • # Fichier de log effacé

    Posté par  . En réponse au message Qui mange mon espace disque ?. Évalué à 3.

    Il y a un truc ultra-classique, mais qui fait perdre beaucoup de temps la première fois que ça arrive : le fichier de log que l'on efface pour gagner de la place alors qu'il est encore ouvert par une instance du programme qui le gère.

    C'est très chiant parce que l'on pense avoir libéré la place alors que ce n'est pas le cas, et tous les scans du système de fichier que l'on puisse faire sont sans objet puisque l'entrée n'existe plus.

    Solution : « lsof » avec un regard particulier sur la taille des fichiers concernés. En principe, une fois tué le processus concerné, le fichier se vide de lui-même. À moins bien sûr qu'il existe un lien dur sur ce fichier à un autre endroit de l'arborescence.

  • [^] # Re: Baptême

    Posté par  . En réponse à la dépêche Migration LinuxFr.org terminée. Évalué à 8.

    Dans les « anales », donc.

  • [^] # Re: Experts

    Posté par  . En réponse au journal À quoi servent les fichiers hosts et comment les supprimer sous linux ?. Évalué à 2.

    Et l'édition moléculaire : https://linuxfr.org/users/jpauty/journaux/le-nouveau-concept-r%C3%A9volutionaire-de-jayce-l%C3%A9dition-mol%C3%A9culai

    Personne n'aurait une copie de ce draft d'avant-garde ?

  • [^] # Re: Vraiment génial

    Posté par  . En réponse au journal Transformers 3 : la face cachée de la lune. Évalué à 1.

    La discussion se transforme vite devant la déception du film de la news, c'est automatique!

    Ben, c'est pas pour rien qu'ils s'appellent les décepti-cons.

  • [^] # Re: heu

    Posté par  . En réponse au journal Transformers 3 : la face cachée de la lune. Évalué à 3.

    Parceque le neutrino il est moins con que le photon : pour rejoindre B depuis A, lui il file tout droit. Peu importe des masses à proximité sur son chemin, il s'en bat comme de sa première choisi le neutrino : zzzzzzzzzouuuuuuu il fait. Et regarde le photon, à côté de lui en début de course, en se demandant "mais qu'est ce qu'il a, lui ? il est bourré ou quoi pour marcher tout le temps de travers ?"

    N'empêche que si le neutrino faisait comme le photon et prenait le TGV, il serait déjà arrivé.

  • [^] # Re: Euhh.....

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

    Ce n'est quand même que moyennement ressemblant…

  • [^] # Re: Tri comptage

    Posté par  . En réponse au journal Une autre excuse pour ne pas bosser…. Évalué à 2.

    Oui mais, comme indiqué dans le fil juste au-dessus, ce n'est pas inhérent à l'algorithme lui-même. Tu peux très bien ranger n réveils sur ton étagère en les programmant en fonction de leur numéro, et ce sans avoir à recourir à un système d'exploitation ni même allumer un ordinateur.

  • [^] # Re: complexité algorithmique

    Posté par  . En réponse au journal Une autre excuse pour ne pas bosser…. Évalué à 2.

    Même pas, parce que pour que cela vaille le coup, il faudrait que l'intervalle entre les timers soit égal à l'overhead nécessaire à leur traitement, qui de toutes façons couvrirait un temps suffisant pour comparer entre eux des dizaines d'éléments. C'est efficace, mais ça reste lent.

    L'intérêt de la chose n'est pas là. D'une part, il suffit que ce soit vrai une fois pour valider l'algorithme. Ensuite, c'est la première fois, à ma connaissance, qu'on exploite la dimension temporelle de manière active pour parvenir à ses fins.

    Et ce qui est vraiment notable, c'est que cet algo, comme ses frères, est complètement transposable dans le monde réel, même si tu éteins ton PC. Il ne repose pas sur un « sous-algorithme ».

    T'en connais beaucoup des algos de tri qui, à la fois, fonctionnent sans comparer les éléments entre eux, ont une complexité en O(n) et sont stables par dessus le marché ?

  • [^] # Re: complexité algorithmique

    Posté par  . En réponse au journal Une autre excuse pour ne pas bosser…. Évalué à 5.

    Ah mais justement, tout est là : l'algo utilisé pour trier les timers sur le système d'exploitation ne peut pas être considéré comme étant sous-jacent au sleep sort.

    Si j'éteins mon ordinateur et si je prends dix minuteurs (pour cuire les œufs, par exemple), que je leur colle tous un numéro et que je veux trier ces minuteurs sur mon étagère, je peux tous les programmer à une durée correspondant à leur numéro respectif (donc en seule fois : complexité linéaire), et prendre chaque minuteur qui sonne pour le ranger à la suite des autres sur mon étagère, ou les mettre les uns sur les autres dans une boîte, ce qui revient à les empiler (donc, exit toute nécessité de conditions d'accès particulières).

    Certes, j'utilise la propriété qu'ont ces minuteurs de pouvoir se signaler eux-même, mais il est de fait que je me retrouve ainsi avec mes dix minuteurs triés, alors qu'à aucun moment, je ne les ai comparés entre eux !

    Et ça, c'est assez remarquable !

  • [^] # Re: Apprentissage

    Posté par  . En réponse à la dépêche Science et éducation : EZ-Draw 1.0 est sorti. Évalué à 1.

    Y a beaucoup de dinos qui disent que tout découle réellement, en pratique, de ALGOL 60. Je n'ai jamais eu l'occasion de vérifier si c'est vrai.

  • [^] # Re: Forcement...

    Posté par  . En réponse au journal Comment refuser la fibre optique. Évalué à 6.

    Ou sinon, t'as la solution plus polie : "désolé, M. Machin est décédé avant-hier. Je dois vous laisser : on nous attend à la morgue". AMHA, ça doit jeter un froid tel qu'ils vont pas rappeler de suite...

    Tu parles ! Ça ne les arrête pas ! Le démarchage par téléphone, c'est exactement la même chose que le spam. Il est établi à la base que c'est dérangeant pour la plupart des gens ciblés, mais il reste l'espoir que les quelques pigeons qui tomberont dedans compenseront la gêne occasionnée. Ceci posé, quand on s'est fait raccrocher au nez cent fois de suite, on considère que les suivants ont toujours l'option de faire la même chose et que, s'ils restent en ligne, c'est qu'ils le souhaitent.

    J'ai perdu mon père il y a trois ans et repris la ligne de téléphone, qui est donc resté un moment à son nom. La ligne n'était pas sur liste orange à ce moment et cela devenait insupportable (jusqu'à cinq appels par jour). Au bout d'un moment je me suis servi du fait que la personne qu'ils appelaient était décédée pour couper court aux conversations. J4ai effectivement eu quelques condoléances mais globalement, c'était :

    « — Bonjour, je suis xxx de la société yyyy…
    — Vous souhaitez parler à M. xxxx ?
    — Oui…
    — Je suis désolé, il est décédé.
    — Ah ? Bien. Puis-je parler au chef de famille, alors ? ».

    Raccrochage immédiat, bien sûr.

    Après deux ou trois conversations du même acabit, j'ai repris les choses en main. Liste orange immédiate qui a eu pour effet d'éliminer 80 % des appels (quand même). Lorsque l'interlocuteur est aimable (et parle français), j'explique poliment mon cas en demandant explicitement à être retiré de leur liste et en m'assurant que ma requête a bien été comprise.

    Après m'être battu contre les vendeurs de fenêtres, et autres… l'une des rares grandes compagnies à me démarcher encore est… SFR.

  • # IGNobel

    Posté par  . En réponse au journal Une autre excuse pour ne pas bosser…. Évalué à 10.

    Je pense que ça mérite au moins au moins le prix Ig nobel, si l'on considère son plus récent objectif, soit récompenser les initiatives qui ont faire rire d'abord puis réfléchir juste après.

    Qu'en pensez-vous ? (On pourrait même dire « Quand pensez-vous ? », ce serait approprié ici).

  • [^] # Re: Bon sens...

    Posté par  . En réponse au journal Énergie nucléaire et bon sens. Évalué à 4.

    Je voulais juste montré comment, avec les tournures adaptées, on peut changer la signification des choses.

    C'est clair. C'est comme ça que certains ont essayé de nous faire croire que le monoxyde de dihydrogène était bon pour la santé… :-)

  • [^] # Re: Allemagne

    Posté par  . En réponse au journal Énergie nucléaire et bon sens. Évalué à 3.

    « Who needs oil ? I ride the bus ! »

  • [^] # Re: Énergie nucléaire et bon sens

    Posté par  . En réponse au journal Énergie nucléaire et bon sens. Évalué à 10.

    Je m'en fous ségolènement de la manière utilisé pour produire notre électricité chérie, mais d'une force dont tu ne peux imaginer la puissance phénoménale

    Ah ben c'est intéressant, ça : penses-tu que l'on puisse utiliser cette force pour produire de l'électricité ? :-)

  • [^] # Re: Salut à toi..

    Posté par  . En réponse à la dépêche Salut à Toi (GNU/)LinuxFr.org !. Évalué à 6.

    L'avantage, c'est que ça se factorise assez facilement…

  • [^] # Re: Real Programmers use Fortran

    Posté par  . En réponse au journal Le problème de la POO pratiquée par des étudiants. Évalué à 2.

  • [^] # Re: Les Fonctions Génériques

    Posté par  . En réponse au journal Le problème de la POO pratiquée par des étudiants. Évalué à 3.

    Je pense que le terme « méthode » ne doit pas avoir la même signification dans les deux langages (de toutes façons, en C++, ce sont des « fonctions membres »).

    Sinon, l'intérêt du template est justement de ne pas avoir à réécrire le code correspondant. Les types génériques dans le code sont remplacés par celui que tu spécifies et, seulement alors, la fonction est compilée dans cette version, ce qui, généralement, produit du code machine complètement différent selon l'objet manipulé alors que l'algorithme reste rigoureusement identique.

    Ensuite, le programmeur peut ensuite écrire lui-même certaines versions de la fonction template pour certains types explicitement. C'est utile, par exemple, si tu fais un container à objet. La plupart du temps, tu stockeras des pointeurs ou des références vers tes (gros) objets. Mais si ce sont des caractères individuels que tu comptes stocker, alors il vaut mieux les enregistrer directement puisque les pointeurs qui les référencent seront entre 4 et 8 fois plus gros que les caractères eux-mêmes.

    Mais les templates ne sont pas liés en eux-mêmes à la surcharge des opérateurs, ni à celle des fonctions membres, d'ailleurs.

  • [^] # Re: Duck typing

    Posté par  . En réponse au journal Le problème de la POO pratiquée par des étudiants. Évalué à 6.

    Ça, c'est l'implémentation du destructeur, en particulier.

  • [^] # Re: Quelqu'un dans l'assemblée saurait "vendre" le concept de POO ?

    Posté par  . En réponse au journal Le problème de la POO pratiquée par des étudiants. Évalué à 3.

    Je n'ai pas dit le contraire.

    J'ai dit que, d'une part, la programmation orientée objet était avant tout une histoire de conception avant d'utiliser un langage lui-même orienté objet et que, d'autre part, quand on commençait à utiliser les structures pour réunir sous une même égide les différents attributs d'une entité donnée (ex : complexe), c'était un embryon de programmation orientée objet.

    C'est bien ça que l'on a dit dès le départ.

  • [^] # Re: Quelques explications

    Posté par  . En réponse au journal Impossible de commenter un contenu vieux de plus de 3 mois. Évalué à 9.

    Je pense que ça peut être intéressant de donner d'ores et déjà la possibilité de le faire aux utilisateurs dépassant un certain niveau de karma. Étant donné le nombre de journaux concernés et les utilisateurs en question, ça ne devrait pas être ingérable…