Mildred a écrit 2248 commentaires

  • # Plusieurs réponses ?

    Posté par  (site web personnel) . En réponse au sondage Vivement. Évalué à 8.

    J'ai bien envie de répondre :

    [X] Perl6 allant avec parrot et plein d'autres langages (autre que brainfuck), une VM intéressante.
    [X] E17, ca a l'air joli et ca a aussi l'air très léger et pratique
    [X] Hurd, bien sûr pour tout ses avantages
    [X] Gnome 3 - j'aime bien Gnome et son ergonomie
    [X] Java 7 sera libre :)

    et:

    [X] Étoilé (basé sur GNUStep) car j'aime bien ce type d'ergonomie
    [X] Lisaac compiler 0.2 car la version 0.1 plante complètement sur mon projet
    [X] Des drivers ATi ou NVidia libres ou une carte OpenGraphics
    ... sans doute d'autres

    pas mal de ces projets sont installables et testables. pais parfois je ne comprend pas bien comment les utiliser (perl6/parrot par exemple).

    Finalement, j'ai voté pour Perl6, premier de la liste
  • # Repository sur Launchpad

    Posté par  (site web personnel) . En réponse à la dépêche bzr 0.11 vient de sortir. Évalué à 3.

    Je viens de découvrir quelque chose de très intéressant, il suffit d'avoir un compte sur Launchpad pour pouvoir créer des branches sue le serveur launchpad, et les partager avec le reste du monde.

    Ca peut être fait avec n'importe quel hébergement HTTP, c'est vrai, mais là ou c'est plus intéressant, c'est que tu peux dans launchpad créer des groupes et travailler à plusieurs sur la même branche.
    Et là, je n'ai pas encore trouvé d'hébergement gratuit permettant d'avoir plusieurs login/mot de passe pour le même espace de stokage.

    https://launchpad.net/bazaar
  • [^] # Re: Version 0.12

    Posté par  (site web personnel) . En réponse à la dépêche MPD, un lecteur audio pas comme les autres... Évalué à 3.

    Pour la reprise après un redémarrage, ce doit être une fonction récente car ma version provenant d'un snapshot svn récent ne le permet pas.
    Ou alors c'est que je ne tue pas mpd comme il faut.
  • [^] # Re: légèreté de l'être

    Posté par  (site web personnel) . En réponse à la dépêche MPD, un lecteur audio pas comme les autres... Évalué à 4.

    C'est même pour cela que je l'ai choisi, car dans les rares cas où mon serveur X se plante, je peux travailler a le relancer en musique :).

    Le jour où Rythmbox le permettra, je switcherais peut être car j'aime bien les interface ergonomiques à la Gnome quand même. Mais en même temps, j'ai personnalisé mpc/mpd pour ajouter une fonctionnalité que je voulais.
    C'est bien le logiciel libre quand même
  • # "Pause mode" patch

    Posté par  (site web personnel) . En réponse à la dépêche MPD, un lecteur audio pas comme les autres... Évalué à 3.

    J'ai fait un patch pour recréer le comportement qu'on peut trouver sur certains lecteurs CD "de salon", appelé chez moi "Auto cue". Il sagit de mettre le lecteur en pause après chaque piste jouée.
    On peut l'utiliser lorsqu'on décide d'arrêter la musique mais qu'on veut attendre la fin de la chanson avant de le faire. On peut aussi l'utiliser si on aime le silence mais aussi la musique et qu'on a envie de composer entre les deux.

    Un patch existe pour mpd et un autre pour mpc en ligne de commande.

    J'ai proposé le patch aux devs mais ils ne semblent pas intéressés car je suis la seule personne a demander cette fonctionnalité. En attendant, je l'utilise :)

    Jene garantis pas qu'ils soient compatibles avec la version actuelle mais je les ai réactualisés dernièrement, et comme cette partie du code ne change pas beaucoup, ils doivent encore être valides.

    Les patches :
    http://bzr.mildred632.free.fr/viewsource/Projects/Finnished/(...)
  • [^] # Re: Pour être plus exact.

    Posté par  (site web personnel) . En réponse au journal 1984. Évalué à 10.

    Ce n'est pas parce qu'on ne pollue pas normalement qu'il faut chercher à polluer pour compenser ... sinon où en serait-on ?

    Je n'arrive pas a imaginer comment les gens peuvent jeter des mégots ou des papiers par terre, je n'ai jamais compris et je pense que je ne comprendrais pas ... ca rend la vile sale et moins agréable.
    Enfin, il y en a peut être qui aiment, il faut de tout dans la nature.

    Par contre, même si j'aimerais bien faire remarquer ces incivilités lorsque j'en vois, je n'ose pas trop, j'ai l'impression que c'est trop répandu et que tout le monde trouve ça normal, mais mon attitude doit renforcer cela :( triste.
  • [^] # Re: D'un autre coté ...

    Posté par  (site web personnel) . En réponse à la dépêche Sortie de Teardrop 0.9 : méta-moteur de recherche. Évalué à 3.

    En belgique aussi ?
  • # un site à partager

    Posté par  (site web personnel) . En réponse au journal Remplacer votre ~/.Xmodmap. Évalué à 3.

    Je n'ai pas encore regardé en détail mais j'ai l'impression que c'est LE manuel de référence : http://pascal.tsu.ru/en/xkb/
  • [^] # Re: Je ne comprends pas ...

    Posté par  (site web personnel) . En réponse à la dépêche Controverses autour de la version 3 de la licence GPL. Évalué à 1.

    En l'occurrence, dans l'association (religieuse) dont je parle, il y a un minimum d'éthique et qui plus est pas beaucoup de personnes concernées seraient capables d'appliquer un patch.

    Les vidéos ne doivent pas être enregistrées. Une solution cryptographique ne permettrait pas d'empêcher l'utilisateur de faire un enregistrement, ce qui est le but.

    J'ai tout à fait conscience qu'il ne sera pas possible d'enregistrer la vidéo de toute façon ... il y a toujours un flux vidéo pour aller à l'écran. Mais le but est de rendre cela le plus difficile pour éviter que des personnes soient tentées de le faire.
  • [^] # Re: à propos du spam

    Posté par  (site web personnel) . En réponse à la dépêche Sylpheed-Claws 2.5.0 est sorti !. Évalué à 2.

    pourtant, rien de plus simple. man 5 crontab

    Ensuite, tu peux avoir des lignes du type :
    @hourly comand
    Qui va t'exécuter une commande régulièrement. Ou pour personnaliser davantage :
    minute heure jour_du_mois mois jour_de_la_semaine commande
    Chaque colonne peut être *, alors ta commande sera exécutée à chaque minute de chaque heure de chaque jour du mois tous les mois de l'année et tous les jours de la semaine.
    Si tu as la ligne :
    0,30 10-20 9 1-5 commande
    Alors ta commande sera exécutée :
    - à chaque fois que les minutes seront soit 0 soit 30 (toutes les 30 min quoi)
    - entre le 10 et le 20 du mois compris
    - au mois de septembre
    - du lundi au vendredi (0=dim, 1=lun, 2=mar ... 6=sam 7=dim)
    (toutes les conditions doivent être satisfaites pour que la commande se lance.)

    Ce n'est pas si compliqué :)
  • [^] # Re: ...

    Posté par  (site web personnel) . En réponse au message garbage colector C++ ?. Évalué à 3.

    J'ai appelé ma classe 'Object' car c'est une classe qui doit servir de base à toutes les autres classes voulant faire partie du GC. ce n'est peut être pas un nom idéal, enfin.

    J'ai déjà deux implémentation de mon langage, une en C¹ utilisant le garbage collector Bohem, l'autre² en D³ (très peu testée et ne doit pas bien marcher).

    Je me doute bien que c'est un sujet un peu complexe mais après avoir créé quelque chose en C qui marche, je n'ai pas l'impression que ce soit si difficile que ça. Et le garbage collector à l'air aussi d'être très simple.
    La complexité du sujet est la raison pour laquelle je viens demander des avis car je n'ai pas une grande formation pour l'instant, juste 1 an d'IUT derrière moi.

    Un exemple de programme : http://bzr.mildred632.free.fr/Projects/moon-c-gc/test1.moon
    Trace attendue :
    display : ("Test squared brackets " (test abc) " done")
    display : (test-env: true)
    display : (test-env: false)
    display : (function: #function<anonymous moon function> "test-"string")
    display : (call: (f: de upvalue-test-env: false))
    display : (sub-environment: test-env = error)
    display : (sub-environment: f = #function<anonymous moon function>)
    display : (call: (f: test-lexical-scoping upvalue-test-env: false))
    display : (f2: test-f2)
    display : (abc (de #function . hi))
    test1.moon:23:5 Runtime error (not found error) : The symbol cannot be evaluated : variable not found
    Stack traceback :
    test1.moon:23:5 : symbol unknown-symbol
    test1.moon:2:5 : pair (pair (symbol display ... ...
    /home/mildred/Projects/moon/moon-cgc/stdmoon/macros.c:209:0 : macro begin
    test1.moon:1:1 : pair (symbol begin ...
    /home/mildred/Projects/moon/moon-cgc/moonexe/main.c:108:0 : buffer


    Il n'utilise pas spécialement le GC, il faudrait que j'en fasse un autre. Et pour en faire un autre, il faut que crée d'autres fonctions/macros.

    Voici comment sont implémentées les fonctions ... et donc comment on fait un binding : http://bzr.mildred632.free.fr/viewsource/Projects/moon-c-gc/(...)

    La fonction C prend en paramètre la pile d'appels/d'évaluation, une référence sur l'objet fonction/macro, une référence sur son paramètre et un pointeur sur un objet résultat à remplir.
    La fonction retourne un booléen, c'est pour avoir une optimisation de la récursion terminale. Si elle retourne vrai, alors le paramètre résultat est évalué après la fin de l'appel.
    *popn est un peu plus compliqué et n'intervient qu'en cas ou la fonction retourne vrai. C'est le nombre d'éléments à faire sauter de la pile après l'évaluation du paramètre résultat. Valeur par défaut = 0.

    ¹ http://bzr.mildred632.free.fr/viewsource/Projects/moon-c-gc
    ² http://bzr.mildred632.free.fr/viewsource/Projects/moon-d
    ³ http://www.digitalmars.com/d/
  • [^] # Re: Je ne comprends pas ...

    Posté par  (site web personnel) . En réponse à la dépêche Controverses autour de la version 3 de la licence GPL. Évalué à 0.

    Personnellement, j'espère qu'on verra des DRM dans les logiciels libres un jour. Et je rappelle que les DRM peuvent avoir des usages tout à fait légitimes comme par exemple protéger un flux vidéo sensible partagé aux membres d'une association.

    Bien sûr qu'avec un LL on aura toujours a un moment accès au flux décrypté. Mais si la loi interdit de contourner les DRM, la modification permettant d'enregistrer le flux décrypté devient illégale. Et cela ne rend pas le logiciel non-libre pour autant. (il y a un post plus haut qui en parle)¹

    Cela n'empêche pas bien sûr qu'il existe illégalement des patches ... mais pour moi, le fait qu'ils soient illégals est une protection suffisante (même si cela n'est pas forcément suffisant pour tout le monde).

    ¹ http://linuxfr.org/comments/758528.html#758528
  • [^] # Re: Je comprends pas...

    Posté par  (site web personnel) . En réponse au message garbage colector C++ ?. Évalué à 2.

    Cet exemple est très simple et n'a effectivement pas besoin de GC. Au début je pensait de même mais je me suis rendue compte que je devais détecter lorsque des objets ne sont plus utilisés. J'ai pensé à un système de comptage par référence avant de me rendre compte que je devais mettre en place un système de garbage-collector complet (le comptage de références ne libérant pas les cycles)

    par exemple (en suivant ta syntaxe) :

    {
        int tab[] = {1, 2, 3};
        {
            int a = 5;
            a += 2;
            print a; // 7
            tab[3] = a;
        }
        print tab;
    }

    tu traduirais comme ça ?

    MonDico["tab"] = {1, 2, 3};
        MonDico["a"] = 5;
        MonDico["a"] += 2;
        MonDico["a"].print();
        MonDico["tab"].append(MonDico["a"]);
    MonDico.remove("a");
        // Je suppose que je détruit l'objet a ... sinon il ne le sera jamais => fuite mémoire
    MonDico["tab"].print();
    

    Et là, c'est bête mais tu avais dans le tableau "tab" une référence vers l'objet "a" que tu as détruit....

    Peut être que si je fais un langage fonctionnel pur, je n'aurais pas ce problème (car il me serait impossible de modifier des variables déjà créées) mais ce n'est pas (encore) mon but.

  • [^] # Re: et ça compile ?

    Posté par  (site web personnel) . En réponse au message garbage colector C++ ?. Évalué à 2.

    bon, maintenant ca compile :)

    pour le nom des smart pointers, je n'ai fait que reprendre le concept que j'ai trouvé dans Crystal Space¹ du même nom qui gère un comptage de références.
    Je n'avais même pas réalisé que smart voulait dire intelligent :)

    1) Le programmeur doit lorsqu'il crée une référence racine vers un objet utiliser les 'smart pointers' (RootRef). Cela va automatiquement renseigner un ensemble contenant la liste des pointeurs racine.

    Il est aussi recommandé d'utiliser des 'smart pointers' simples (Ref) pour les autres références vers des objets, ainsi une métode de comptage des références permet de libérer au plus tôt les objets.

    Pour les cycles, c'est là que l'algo mark & sweep est utile.

    2) Tout repose sur la redéfinition de gcIterate, effectivement, mais ce devrait être fort simple :
    void gcIterate() {
    ref1.gcMark();
    ...
    refN.gcMark();
    }


    C'est vrai que c'est pour une utilisation dans mon application, donc je peux me permettre de telles contraintes que je ne trouve pas très élevés.

    ¹ http://www.crystalspace3d.org
  • [^] # Re: et ça compile ?

    Posté par  (site web personnel) . En réponse au message garbage colector C++ ?. Évalué à 2.

    Je n'ai pas encore essayé de compiler ... et c'est mon premier bout de code en C++ alors il y a probablement plein d'autres erreurs :)

    Bon, ca, c'est une grosse erreur, je suis d'accord :) Cela doit venir d'un copier/coller fait à 1h du matin alors c'est peut être normal.
  • [^] # Re: ...

    Posté par  (site web personnel) . En réponse au message garbage colector C++ ?. Évalué à 2.

    Mais ... le GC demandé, c'est pour ton nouveau langage? Pas pour le C++ si je ne m'abuse. Du coup, je ne suis pas sûr qu'un GC pour le C++ te soit vraiment utile, au contraire d'un GC pour ton langage, mais codé en C++.

    Oui, mais ca existe ça ? des GC directement disponnibles pour mon langage ?
    C'est pour ça que j'en fais un ... que je compte accésoirement utiliser pour autre chose que les objets de mon langage.

    Sinon, pour la solution de parsing, je pense que l'huile de coude est plus simple vu la syntaxe très simple du langage (pas de priorité d'opérateurs à gérer ... que des S-expressions) alors qu'apprendre et utiliser lex/bison/yacc/whatever serait plus compliqué
  • [^] # Re: GC++

    Posté par  (site web personnel) . En réponse au message garbage colector C++ ?. Évalué à 2.

    En fait, on a un projet à faire en C++ (c'est imposé) et un autre en Java (imposé aussi). Le thème du projet C++ est "créer un interpreteur". Et comme je travaille en ce moment sur un projet personnel visant à créer un langage de script du style de scheme, j'ai pensé que cela pourrait rentrer dans le cadre du projet à l'IUT.

    Le GC, je le crée car j'en ai besoin pour mon langage ... etque je n'aime pas la solution GC de Bohem (car conservatif). Et ce que j'ai trouvé surprenant c'est qu'en quelques heures hier soir, je l'ai fini (sans aucun test et sans compiler non plus :). Je trouve ça assez suspect quand meme.

    Les sources sont là : http://bzr.mildred632.free.fr/viewsource/Projects/gc++/

    5 fichiers aps très gros ... et je pense déja avoir fini (sauf si je tente l'implémentation d'une version concurrente).

    Sinon, je suis complètment d'accord avec vous que les projets ça peut prendre du temps pour finalement pas grand chose ... comme découvrri que ce qu'on a fait existait déjà. Cela permet aussi de faire ses expériences et dans mon cas, apprendre le C++. De plus, ce langage, j'en ai déjà une version presque fonctionnelle en C et un peu moins finie en D ... et j'ai à coté plein de projets qui sont morts-nés.

    Et en plus, je tiens vraiment à le créer ce langage, ce serait à la fois un langage de programmation complet (style scheme) mais aussi un langage qui permettrait d'écrire du texte un peu comme LaTeX ... et ce texte sera transformé en XML ... et ensuite une stylesheet DSSSl me fera un joli PDF ou autre document convertible en PDF :) Il me reste à apprendre DSSSL.
    gros programme, non ?
  • [^] # Re: Soyons pragmatique

    Posté par  (site web personnel) . En réponse à la dépêche Nvu, Kompozer et Mozilla Composer. Évalué à 4.

    j'imagine le logo :-D
  • [^] # Re: claviers blancs

    Posté par  (site web personnel) . En réponse au journal Tendinites et douleurs articulaires liées à l'informatique.. Évalué à 2.

    Il y a bien sûr le typematrix¹ sans aucune écriture mais il est un peu cher je trouve ...
    On peut même trouver un clavier ou on peut réorganiser les touches comme on veut, mais là aussi c'est cher ²
    Sinon, il y a des choses comme les pavés numériques ou le frogpad³, mais là le problème c'est la petite taille. On peut s'amuser a les rabouter ensemble à la main mais ca ne doit pas être très facile.

    --
    ¹ http://www.typematrix.com/images/skins/blank_keyb_640x272.jp(...)
    ² http://www.thinkgeek.com/computing/input/77ba/
    ³ http://www.thinkgeek.com/computing/input/6c82/
  • # compiler sa keymap

    Posté par  (site web personnel) . En réponse au journal Remplacer votre ~/.Xmodmap. Évalué à 4.

    Si on voyage ailleurs par exemple (la keymap étant dépendante du système à cause des include) c'est possible. Cela peut aussi être utile si on veut enlever tous les warnings de la compilation (il y en a beaucoup chez moi).
    # compilation
    $ xkbcomp map.xkb map_compilee.xkm
    # installation
    $ xkbcomp map_compilee.xkm $DISPLAY
    
    le fichier map_compilee.xkm est suffisant en soi. Finalement setxkbmap ne sert plus à rien :)
  • [^] # Re: &#8308;&#8309;&#8310;... sous GTK

    Posté par  (site web personnel) . En réponse à la dépêche [RFC] Évolution du clavier « fr-latin9 ». Évalué à 2.

    ça marche aussi avec SCIM

    export GTK_IM_MODULE="scim"
  • # manuel de Workrave ???

    Posté par  (site web personnel) . En réponse au journal Tendinites et douleurs articulaires liées à l'informatique.. Évalué à 2.

    Bonjour,
    J'ai essayé ce logiciel, mais impossible de trouver de la documentation ... c'est normal ?
  • [^] # Re: Zenwalk c'est bon

    Posté par  (site web personnel) . En réponse au journal Test Zenwalk 3.0. Évalué à 1.

    Pour Xubuntu, tu peux toujours utiliser le CD alternatif qui te permet l'installation en mode texte classique sans problèmes.
    C'est ce que j'ai utilisé que un PC plus très neuf.
  • # claviers blancs

    Posté par  (site web personnel) . En réponse au journal Tendinites et douleurs articulaires liées à l'informatique.. Évalué à 4.

    Quelqu'un sait où on peut trouver des claviers blancs (sans écriture) et droits (les touches ne sont pas décalées).
    J'en rêve.
  • [^] # Re: Désillusion

    Posté par  (site web personnel) . En réponse au journal La GPL plus business friendly que la BSD ?. Évalué à 5.

    Je pense la même chose.
    Mes projets (même si ils ne sont pas a un stade avencé) sont tous avec la licence MIT car je considère que je fais don de mon code.

    Le problème de la GPL c'est qu'elle est facilement incompatible avec d'autres licences libres. Et ça, je trouve que c'est très gênant. Tout est libre mais on doit se limiter pour des problèmes de licence.
    Si ca marche, c'est car la GPL est dominante.