Nicolas Boulay a écrit 16008 commentaires

  • [^] # Re: Ironie

    Posté par  (site web personnel) . En réponse au journal Nouvelle version de Notepad++. Évalué à 4.

    Si la pauvreté est définit comme 50% du salaire médian, c'est à cause du pouvoir d'achat variable.

    Une coupe de cheveu est la même en France ou à Dakar, mais le prix ne sera pas le même ! Ni le loyer…

    Cela me rappelle l'africain qui racontait la vie de son père avec sa ferme, son troupeau, qui n'avait pas les 2$/jours de pauvreté absolut, mais vivait mieux que lui qui galérait au USA.

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

  • [^] # Re: Personnellement, je trouve cela très gênant.

    Posté par  (site web personnel) . En réponse au journal Nouvelle version de Notepad++. Évalué à 3. Dernière modification le 03 janvier 2019 à 15:30.

    Le foot est un très mauvais exemple. Car les résultats financiers sont directement lié à une personne. rien que la vente de T-shirt au nom de la star peut rembourser le transfert.

    Par contre, un patron, bon ou mauvais, touche son parachute doré.

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

  • [^] # Re: optimisation et propagation de constante

    Posté par  (site web personnel) . En réponse à la dépêche OCaml 4.06 et 4.07. Évalué à 3.

    Manipuler en inlining des conteneurs modifient la mémoire, c'est pour ça que cela n'existe pas en général.

    C'est à vérifier.

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

  • [^] # Re: optimisation et propagation de constante

    Posté par  (site web personnel) . En réponse à la dépêche OCaml 4.06 et 4.07. Évalué à 4. Dernière modification le 14 décembre 2018 à 16:03.

    Oui cela revient à ce que tu dis. Sauf qu'en général, cela ne touche pas les conteneurs, les string par exemple.

    Pour moi la spécialisation, revient à pouvoir faire plusieurs version de la même fonction selon le type réel utilisé. Ocaml et c++ m'ont convaincu que c n'était pas forcément la meilleur approche car la taille du code peut exploser. C'est plus simple de pouvoir faire de l'inlining dans les fonctions qui utilisent ces fonctions génériques.

    à priori f-lambda peut traiter ce genre d'optimisation ?

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

  • [^] # Re: Et par rapport à redo ?

    Posté par  (site web personnel) . En réponse au journal `smk`, un make sans Makefile. Évalué à 7.

    Je n'ai pas compris si tu utilisais un hash du fichier ou un diff, ou la date comme make, ce qui pose tout un tas de problème chiant. L'avantage d'utiliser un hash est de permettre aussi de sauver des fichiers intermédiaires, et si ils sont identiques, ne pas tout refaire (cas typique d'ajouts d'un commentaire dans un include C++, qui recompile tout, au lieu de se rendre compte que le fichier.o est toujours le même).

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

  • [^] # Re: Expliciter l'intérêt

    Posté par  (site web personnel) . En réponse au journal Pythran - 0.9.0 - kozhamzer. Évalué à 4. Dernière modification le 29 novembre 2018 à 12:33.

    Si le niveau d’expressivité est le même que python, j'ai du mal à voir l’intérêt.

    Si c'est pour faire un truc à part, l'idée serait plutôt de faire un langage intermédiaire de haut niveau. LVM propose un langage commun très bas niveau, l'idée serait de proposer un AST très haut niveau, avec beaucoup de transformation possible pour l'optimisation, qui ciblerait ensuite LVM ou du simple C ou du C++.

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

  • [^] # Re: Idée d'amélioration

    Posté par  (site web personnel) . En réponse à la dépêche WBO : un tableau blanc interactif. Évalué à 3.

    avec une library de forme ?

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

  • [^] # Re: RISC-V

    Posté par  (site web personnel) . En réponse au journal Thales rejoint la fondation RISC-V pour participer à la sécurisation des uProcesseurs open source. Évalué à 4.

    GPL ou BSD cela ne change pas grand chose. La licence découlant de la loi sur les droits d'auteur s'applique sur le code source, les fichiers "netlist" mais pas sur la puce elle-même. Ainsi, une modification d'un HDL GPL impose simplement de fournir les soft à ceux qui ont les netlist, mais pas au propriétaire du hardware lui-même.

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

  • [^] # Re: Io

    Posté par  (site web personnel) . En réponse au journal Marre des cartes ARM ?. Évalué à 4.

    Programmer un raspberrypi en baremetal doit être très compliqué. Rien que l'arbre d'horloge doit être super gros à gérer.

    De plus, un RPi n'a pas non plus d'IO ou presque.

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

  • [^] # Re: Io

    Posté par  (site web personnel) . En réponse au journal Marre des cartes ARM ?. Évalué à 4.

    Le problème d'avoir un Linux à jour est toujours là. Le moindre petit STM32 dispose de plus d'IO que ces cartes ! Mais on ne mets pas de Linux sur un STM32 :/

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

  • # Io

    Posté par  (site web personnel) . En réponse au journal Marre des cartes ARM ?. Évalué à 5.

    C'est sympa ces cartes, mais il manque toujours un paquet d'IO simple pour manipuler des actionneurs : quelques PWM pour faire des sorties de commande moteur et quelques ADC (convertisseurs analogiques numériques) pour les entrées. Rajouter cela à ce genre de carte peut être compliqué, souvent si des modules externes existent les latences étaient toutes pourris.

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

  • [^] # Re: Intéressant, mais combien ça coute ?

    Posté par  (site web personnel) . En réponse au journal Marre des cartes ARM ?. Évalué à 7.

    https://www.hardkernel.com/shop/odroid-h2/ $111

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

  • [^] # Re: Expliciter l'intérêt

    Posté par  (site web personnel) . En réponse au journal Pythran - 0.9.0 - kozhamzer. Évalué à 3.

    Disons que j'ai réfléchis à ça depuis longtemps : transformer une équation mathématique en utilisant les vrais propriété des objets manipulés pour réduire l'équation entière par une des méthodes d'approximation, au lieu d'avoir 20 appels de fonctions. Je voulais le faire avec un pseudo-langage qui cible le C++, mais python vers C++, c'est encore mieux.

    Le cas général étant très complexe, pour commencer, j'imagine que transformer une lib mathématique en template C++ à utiliser à la place d'appel de fonction devrait correctement fonctionner : c'est gcc qui fera le boulot. Cela revient à une sorte d'inlining de fonction.

    Je ne connais pas python, donc, c'est difficile de m'y mettre. Par contre, je serais curieux de voir le résultat de compilation "typique" d'un cœur de boucle passé en C++.

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

  • [^] # Re: Expliciter l'intérêt

    Posté par  (site web personnel) . En réponse au journal Pythran - 0.9.0 - kozhamzer. Évalué à 3.

    Question bête est-ce que tu peux aller plus loin dans la compilation vers C++ ?

    Je ne sais pas comment les fonctions mathématiques sont gérées en python, mais en C, math.h contient les définitions de code des fonctions usuels qui sont appelé par le code. Ces fonctions sont écrites avec des polynômes et des réductions de domaines.

    Si ces fonctions étaient définit en template C++, et si tu génères des appels de template, le compilateur devrait pouvoir directement optimiser les opérations en les combinant (si présent dans la même unité de compilation).

    A cause des restrictions de IEE754, Pythran aurait encore beaucoup de marge à faire l'optimisation lui-même. En gros, est-il possible de reprendre les définitions mathématiques des opérations lors de la génération de code, pour combiner ensuite le code généré. Cela ressemble au travail manuel qui est fait dans math.c pour chacune des opérations de base.

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

  • [^] # Re: Microsoft en rêvait

    Posté par  (site web personnel) . En réponse au journal IBM achète Red Hat. Évalué à 7.

    La réputation d'IBM est d'acheter des boites, puis de ne plus s'occuper des logiciels, juste de tirer parti de la base installée.
    Cela remonte à quelques années, mais beaucoup de client utilisaient DOORS et tous s'en plaignaient.

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

  • [^] # Re: Complices

    Posté par  (site web personnel) . En réponse à la dépêche Nos oignons, retours sur 2017-2018 et campagne de dons. Évalué à 3.

    Les droits ne sont pas là pour faire joli. On dirait que tu es pour la théorie et contre l'effectivité du droit.

    Poste est un service commercial

    qu'est-ce que cela change ?!

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

  • # Compote en gourde ?

    Posté par  (site web personnel) . En réponse au journal La compote de pommes en gourde n'est PAS un truc de fainéant.. Évalué à 10.

    J'imagine que tu parles, bien, sûr des compotes-bouchons, roi du gouter des enfants maltraités par leur parents qui ne veulent pas leur donner un paquet de cookies complet.

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

  • # Y'a Assistance dans le nom

    Posté par  (site web personnel) . En réponse au journal Le VAE n'est PAS un truc de fainéant. Évalué à 7.

    Un truc où il y a marqué "Assistance" dans le nom est forcément un truc de fainéant.

    C'est bien connu que tous les assistés sont des fainéant, non ?

    CQFD.

    Moto électrique à assistance humaine écologique, cela pète plus.

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

  • [^] # Re: go

    Posté par  (site web personnel) . En réponse au journal Réduire la taille des exécutables générés avec PyInstaller. Évalué à 3.

    Go n'a presque pas de dépendance. Le binaire de base fait quand même 7 Mo (runtime).

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

  • [^] # Re: Cutelyst

    Posté par  (site web personnel) . En réponse au journal Des nouvelles d'Ulfius, framework web en C. Évalué à 8. Dernière modification le 10 octobre 2018 à 11:16.

    En Go, le hello world http c'est :

            package main
    
            import (
                "io"
                "log"
                "net/http"
            )
    
            func main() {
                // Hello world, the web server
    
                helloHandler := func(w http.ResponseWriter, req *http.Request) {
                    io.WriteString(w, "Hello, world!\n")
                }
    
                http.HandleFunc("/hello", helloHandler)
                log.Fatal(http.ListenAndServe(":8080", nil))
            }

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

  • [^] # Re: À boire et à manger

    Posté par  (site web personnel) . En réponse au journal Un développeur qui dénonce. Évalué à 3.

    C'est quoi plus dure "à évaluer" ? Soit c'est évaluable, soit cela ne l'est pas.

    Tu sépares clairement la phase compilation de la phase exécution, mais dans beaucoup de langage, cela n'a pas trop de sens.

    Par exemple, go est un langage compilé. Pourtant, en test, je fais un "go run" qui compile et exécute à la volé. Donc, que l’exécution de ta machine de turin se fasse à la compile ou à l’exécution, cela ne change pas grand chose d'un point de vue pratique (vu de l'extérieur).

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

  • [^] # Re: C'était mieux avant

    Posté par  (site web personnel) . En réponse au journal Un développeur qui dénonce. Évalué à 5.

    Bizarre, pour moi la régulation thermique était une protection du bios de la machine, pas de l'OS.

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

  • [^] # Re: ajouter des puces à un PCB = fantasme

    Posté par  (site web personnel) . En réponse au journal Des puces-espionnes installées sur des cartes mères par les Chinois ?. Évalué à 4.

    Pour que cela fonctionne, il faut que le µP puisse intervenir sur le code/mémoire du cpu de management. Le grain de riz peut modifier un petit bout de l'ordinateur, mais il n'aura jamais la capacité de filtrer le contenu réseau pas exemple.

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

  • [^] # Re: Taille de la puce

    Posté par  (site web personnel) . En réponse au journal Des puces-espionnes installées sur des cartes mères par les Chinois ?. Évalué à 6.

    Il faudrait que le grain de riz soit connecté à un lien I2C ou SPI qui gère le cpu de management présent dans le chipset pour en programmer une partie.

    Pourquoi pas ?

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

  • [^] # Re: À boire et à manger

    Posté par  (site web personnel) . En réponse au journal Un développeur qui dénonce. Évalué à 3.

    Quel différence tu fais ? Le linker de Gcc cherche les objets non appelés pour les éliminer du code;

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