Nicolas Boulay a écrit 15798 commentaires

  • [^] # Re: Bref résumé

    Posté par  (site web personnel) . En réponse au lien Attaque sur le format d’échange des clefs privées OpenPGP. Évalué à 3.

    Pourquoi à la base, il ne reutilisait pas leur chiffrement classique ? Pourquoi voir un deuxième mécanisme ?

    "La première sécurité est la liberté"

  • [^] # Re: Bref résumé

    Posté par  (site web personnel) . En réponse au lien Attaque sur le format d’échange des clefs privées OpenPGP. Évalué à 4.

    Pourquoi à la base, il ne reutilisait pas leur chiffrement classique ? Pourquoi voir un deuxième mécanisme ?

    "La première sécurité est la liberté"

  • [^] # Re: type

    Posté par  (site web personnel) . En réponse au journal [Letlang] Écrire un compilateur en Rust (partie 3). Évalué à 3.

    Mes erreurs autour de non était lors de composition.

    J'ai utilisé les tautologies de https://fr.wikipedia.org/wiki/Implication_(logique) comme test. De mémoire, c'était le Modus Tollens qui était faux : ((A -> B) & ~B) -> ~A avec (a -> b) = (~a or b)

    "La première sécurité est la liberté"

  • [^] # Re: type

    Posté par  (site web personnel) . En réponse au journal [Letlang] Écrire un compilateur en Rust (partie 3). Évalué à 3.

    Est-ce que cela répond à la problématique ?

    Oui. En gros, on peut mettre des littéraux dans une définition, et l'on peut définir le type d'un champ plus tard.

    Tu veux quelque chose de similaire à Boundary en Elixir. C'est aussi dans mon radar mais pour bien plus tard.

    Oui, en gros, c'est ça. Si tu définit une architecture hexagonal, par exemple, comment faire pour le déclarer dans le code pour éviter que des refactorisation ne casse accidentellement l'architecture. Typiquement, tu veux éviter l'introduction de certaine dépendance, que des modules feuilles restent des feuilles, etc…

    D'ailleurs, est-ce que tu as déjà codé et tester le "&" et le "non" dans ton typage ? J'ai écris un début de truc semblable qui mélange type et validité, et le "non" me pose un gros problème de définition. Si cela t'intéresse je pourrais retrouver le cas.

    C'est l'outil coherentyaml ( https://github.com/nicolasboulay/coherentyaml ). Il faudrait que je le termine d'ailleurs.

    "La première sécurité est la liberté"

  • [^] # Re: type

    Posté par  (site web personnel) . En réponse au journal [Letlang] Écrire un compilateur en Rust (partie 3). Évalué à 3.

    Non, cela n'est pas strictement équivalent.

    Tu aurais un cas ou tu définis message comme :
    class messageDef({
    address: int,
    type_: type,
    })

    class messageDefSpeed({
    adress: 0x04,
    type: float32,
    })

    classe messageSpeed({
    def: messageDefSpeed,
    data: def.type
    })

    Les 3 classes pourraient être dans 3 bibliothèques différentes. Une instance de messageSpeed serait le contenu d'un paquet circulant sur le réseau.

    La différence avec ton cas, est l'existence d'un "metatype" qui contraint ce que peut être messageDefSpeed qui est lié à la nature du lien (un message sur ARINC 429). Et chaque message est différent selon son adresse.

    C'est une manière de contraindre les données lors d'utilisation d'une lib. Peut-être que c'est faisable avec des types paramétriques, mais est-ce que cela resterait lisible ?

    Cela me fait aussi penser que j'aurais aimer parfois un moyen de déclarer les dépendances entre modules, et surtout les dépendances que je ne veux jamais. Le but est d'éviter un refactoring avec des inclusions sauvages qui transforment le code en plat de spaghetti.
    Par exemple, exiger qu'une classe utilitaire ne puisse jamais être dépendante de module "business". Cela serait une manière de contraindre la structure du programme.

    "La première sécurité est la liberté"

  • [^] # Re: type

    Posté par  (site web personnel) . En réponse au journal [Letlang] Écrire un compilateur en Rust (partie 3). Évalué à 3.

    Dommage, pour les variables qui contiennent un type, cela serait pratique pour un truc comme du JSON.

    "La première sécurité est la liberté"

  • # type

    Posté par  (site web personnel) . En réponse au journal [Letlang] Écrire un compilateur en Rust (partie 3). Évalué à 4.

    Je vois que tu as pensé à créer des types pour les litéraux. C'est une bonne idée.

    J'ai un cas d'usage assez chiant quand tu veux créer des définitions de configuration pour un système. Imagines une liste de définition de message, tu peux avoir une matrice de base (exemple A429), une lib de ta boite (A429 + extension Thales), et tu veux tout mettre ensemble et ajouter les spécificités de ton équipements (pilote auto). La lib peut définir des messages (vitesse), messages définis dans le fichier final, mais qui peut contenir des informations comme "le type de la colonne 2 est un entier". Concrètement, cela veut dire que le type est une donnée comme une autre.

    Aujourd'hui, vouloir faire cela avec les outils classiques imposent d'utiliser un enum et de recoder un système de typage.

    Le deuxième point qui pourrait être très sympa, est d'étendre le concept de "constante propagation" lors de la phase d'optimisation en incluant les types structurées. Actuellement, ce genre d'optimisation ne marche qu'avec les types primitifs. Peu de langages permettent d'écrire un littéraux d'un type structuré ou une liste (comme le Json de JS). Imagines si on peut faire de la constante propagation de string, si on a un interpréteur de regexp, on obtient un compilateur de regexp. Les performances obtenus n'auraient plus rien à voir.

    "La première sécurité est la liberté"

  • # mail ?

    Posté par  (site web personnel) . En réponse au lien vers la dématérialisation du ticket de caisse sans concession ?. Évalué à 7. Dernière modification le 23 avril 2022 à 12:14.

    Ils vont rendre obligatoire de donner son mail ?

    Et donc google récupére tout ou presque.

    "La première sécurité est la liberté"

  • [^] # Re: autre insipiration

    Posté par  (site web personnel) . En réponse au journal Hydromel : mon langage de description de matériel idéal ?. Évalué à 4.

    Esterel propose un système d'event présent/absent plus facile à gérer qu'un booléen, les operateurs pre ou post pour gérer les registres.

    En 2000, il était question de behavioral compiler. L intérêt était surtout le code avec des wait, qui infére les FSM.

    "La première sécurité est la liberté"

  • [^] # Re: autre insipiration

    Posté par  (site web personnel) . En réponse au journal Hydromel : mon langage de description de matériel idéal ?. Évalué à 6.

    Esterel a été développer par Esterel technologie EDA qui a fait faillite en 2009. Le produit a été transféré à une filial de Xillinx qui faisait un produit concurrent.

    Texas Instrument a utilisé Esterel pour plusieurs blocks avec un gros succès. C'était quelques jours avant la crise de 2008. Le langage se synthétise très bien. Il y a eu des POC de dsp fait chez TI. Il était très naturelle de faire de mini FSM qui dialoguait, plutôt qu'une grosse FSM. Le dialogue de FSM en vhdl est un enfer. Ainsi, des spécifications sois-disant pour simplifier le code le complexifiait (pas de hit under miss pour un cache)

    Il y avait aussi un outil de preuve formel associé. Il était possible d'avoir des tests qui revenait à dire que telle sortie était toujours vrai. Le système trouvait le contre-exemple en quelques secondes.

    Lustre a été renommer en SCADE et existe toujours chez Esterel Technologies. SCADE 6 a eu les FSM de Esterel en plus. Il est plus orienté logiciel temps réel dur (code aéronautique, …). Je ne crois pas qu'il génère du VHDL ou autre. Je crois avoir entendu parler de générateur de code pour des puces "matrice de processeurs".

    Esterel Tech a été vendu à Ansys (le gros concurrent de Dassaut System) vers 2015.

    "La première sécurité est la liberté"

  • # autre insipiration

    Posté par  (site web personnel) . En réponse au journal Hydromel : mon langage de description de matériel idéal ?. Évalué à 4.

    Est-ce que tu connais le langage Esterel de Gérard Berry ? C'était un langage purement synchrone très efficace. Une version V7 était en cours de standardisation. Puis la boite a coulé.

    "La première sécurité est la liberté"

  • [^] # Re: Jugement majoritaire

    Posté par  (site web personnel) . En réponse au journal Tournesol pour l'élection présidentielle. Évalué à 6.

    Ce que l'on essaie de te dire, c'est que le vote par jugement majoritaire est un sur-ensemble du vote Condorcet avec la possibilité d'égalité.

    Les votes par classement ont tous les même propriété (théorème d'impossibilité d'Arrow) et parfois on ne peut pas avoir de solutions simples. Le dépouillement est aussi très complexe.

    Le JM est à la fois plus simple et sans les problèmes de Condorcet tout en ayant les mêmes propriétés positives.

    "La première sécurité est la liberté"

  • [^] # Re: sondage et vote utile

    Posté par  (site web personnel) . En réponse au journal Tournesol pour l'élection présidentielle. Évalué à 6.

    C'était interdit avant, mais c'est oublié "radio Londres" et les sondages belges et suisses.

    "La première sécurité est la liberté"

  • [^] # Re: Jugement majoritaire

    Posté par  (site web personnel) . En réponse au journal Tournesol pour l'élection présidentielle. Évalué à 3.

    Oui, c est pour ça que je parlais de culture politique. Dans un tel système, il est possible de franchement jouer au con.

    "La première sécurité est la liberté"

  • [^] # Re: Jugement majoritaire

    Posté par  (site web personnel) . En réponse au journal Tournesol pour l'élection présidentielle. Évalué à 4.

    Modulo le fait qu'il faut a un moment se mettre d accord. Que cela soit par culture politique ou par une part de majoritaire.

    "La première sécurité est la liberté"

  • [^] # Re: Jugement majoritaire

    Posté par  (site web personnel) . En réponse au journal Tournesol pour l'élection présidentielle. Évalué à 2. Dernière modification le 09 avril 2022 à 08:54.

    Je ne vois pas ou tu veux en venir. Le vote utile est le fait de voter pour le moins pire au lieu de voter pour son choix préféré. Cela n'a pas de sens pour le jugement majoritaire ou condorcet : il y a plusieurs votes.

    De plus, condorcet est bien plus complexe a mettre en œuvre et n'apporte rien de plus.

    "La première sécurité est la liberté"

  • [^] # Re: Jugement majoritaire

    Posté par  (site web personnel) . En réponse au journal Tournesol pour l'élection présidentielle. Évalué à 2.

    Je ne vois pas ou tu veux en venir. Le vote utile est le fait de voter pour le moins pire au lieu de voter pour son choix préféré. Cela n'a pas de sens pour le jugement majoritaire ou condorcet : il y a plusieurs vote.

    De plus, condorcet est bien plus complexe a mettre en œuvre et n'apporte rien de plus.

    "La première sécurité est la liberté"

  • # Jugement majoritaire

    Posté par  (site web personnel) . En réponse au journal Tournesol pour l'élection présidentielle. Évalué à 3.

    Les méthodes avec un ordre comme Condorcet ont un problème : il n'y a pas toujours de gagnant.

    Le jugement majoritaire est à notation de tous les candidats (cela revient à pouvoir voter pour plusieurs candidats). C'est plus simple et cela enlève tout un tas de truc stupide comme le "vote utile" ou l’introduction d'un petit candidat pour faire perdre un gros.

    "La première sécurité est la liberté"

  • [^] # Re: Quelques réponses

    Posté par  (site web personnel) . En réponse au journal Droits d'auteurs. Évalué à -7.

    Ne pas avoir d'horaire n'a rien à voir à une obligation de bosser 24/24, vous avez tout compris de travers.

    "La première sécurité est la liberté"

  • [^] # Re: Quelques réponses

    Posté par  (site web personnel) . En réponse au journal Droits d'auteurs. Évalué à 4.

    Et le faire en pro en open source ? L'opinion a pas mal changé sur le sujet.

    "La première sécurité est la liberté"

  • [^] # Re: Licences "grises"

    Posté par  (site web personnel) . En réponse au journal Droits d'auteurs. Évalué à 3.

    Le coté freestyle ne pose problème que dans un cas : celui avec des apports extérieurs intégrés et que l'on veut refermer le code.

    "La première sécurité est la liberté"

  • [^] # Re: Quelques réponses

    Posté par  (site web personnel) . En réponse au journal Droits d'auteurs. Évalué à -3.

    Il n'y a pas de seulement. Le sujet a déjà été traité ici, il y a longtemps. La clause est absolument nécessaire pour éviter des embrouilles potentiels. Un cadre n'a pas d’horaire, donc tout travail est censé appartenir à l'employeur ("exercice de leur fonction").

    "La première sécurité est la liberté"

  • [^] # Re: Quelques réponses

    Posté par  (site web personnel) . En réponse au journal Droits d'auteurs. Évalué à 2.

    Je n'ai pas la source, mais on m'a dit par le passé que ce n'est pas la notion d'horaires qui compte, mais plutôt de champ d'application/compétence.

    Oui, car on est souvent cadre, et un cadre n'a pas d'horaire. Il faut donc parler de "hors cadre du travail". Le problème se pose pour la réalisation d'un soft qui serait utile au boulot, sans mention dans le contrat de travail l'employeur peut se l’approprié en parti.

    Comprendre que si tu veux breveter un truc (car on parle ici de transfert de propriété industrielle, la propriété intellectuelle reste à l'auteur et est inaliénable en France) que tu as fait le soir à la maison mais qui a trait à l'activité de ton employeur, alors c'est pour lui.

    Un brevet, ce n'est pas du droit d'auteur.

    La paternité du droit d'auteur est inaliénable, mais cela n'a quasiment aucun effet concret. Par exemple, le droit de modification est assorti de clause de dédommagement.

    "La première sécurité est la liberté"

  • [^] # Re: Dans la fonction publique, c'est la même chose

    Posté par  (site web personnel) . En réponse au journal Droits d'auteurs. Évalué à 5.

    Complètement injustifiée à ton avis ?

    Comme dit dans l'autre commentaire, c'est une question de droit. Pas de moral.

    Je pense que si les droits d'auteurs de logiciel était géré comme la création artistique avec une part des bénéfices, beaucoup d'entre nous seraient millionnaires. Je ne suis pas contre.

    Il faut bien noter aussi que le système de droit d'auteur artistiques ne rend riche qu'une infime parti des artistes. L'exemple est le top 10 des ventes Bd : avec 10 000 ventes tu n'es pas mauvais, mais tu touches 10k€ pour un an de boulot. Le dessinateur d'Asterix qui en vend 300 000, va toucher 300k€, par contre. Les 8% devraient vraiment être un ultra minimum, et une avance sur commande ne devrait pas être en dessous du smic (les éditeurs proposent 6k€ d'avance au lieu de 18 pour un an de boulot…)

    "La première sécurité est la liberté"

  • [^] # Re: Dans la fonction publique, c'est la même chose

    Posté par  (site web personnel) . En réponse au journal Droits d'auteurs. Évalué à 4.

    Tu veux dire qu'un soft développé par un fonctionnaire (payé par l'état donc pour cela), peut demander des parts d'une revente ?!

    "La première sécurité est la liberté"