Ontologia a écrit 2120 commentaires

  • [^] # Re: dommage

    Posté par  (site web personnel) . En réponse au journal The Future of Functional Programming Languages. Évalué à 9.

    Effectivement c'est assez pénible, il faudrait essayer un autre format moins libre :-(

    Je note deux interventions intéressantes (j'ai pas encore tout vu) :

    • Leroy qui est en train de se demander s'il ne faudrait pas voir ailleurs que faire des système de type hyper strict car à force ça risque de gaver les utilisateurs. Après j'ai pas compris ce qu'il propose
    • McQueen qui pose le problème des exceptions, pour lui les exceptions sont un core dump. C'est un peu extrême comme point de vue, mais je me souviens m'être rendu compte au sein du projet Lisaac, après âpres discussions, que c'est un champ de recherche sous exploité (je peux me tromper). En fait c'est un problème essentiellement humain : dans un logiciel de E-Commerce, une exception pour disque plein peut provoquer un blocage de l'appli, alors que dans un airbus, c'est inimaginable. Donc ça dépend de la tolérance à la panne.

    Plus généralement, ils se posent beaucoup la question de pourquoi un langage marche ou pas. Or, cette question pourrait être une problématique universitaire en… science de gestion. On a au mieux une question d'amateur éclairés (comme si je donnais mon avis sur le système de type de OCaml).

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • # Et la compatibilité

    Posté par  (site web personnel) . En réponse à la dépêche Archlinux utilise désormais systemd par défaut pour les nouvelles installations. Évalué à 10.

    Ce qui me dérange un peu dans cette histoire, c'est le côté Linux-centric : Linux s'éloigne de plus en plus d'Unix pour devenir un objet à part entière, et il va être de plus en plus difficile de porter les logiciels entre différents systèmes.

    Voilà pour le troll.

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • [^] # Re: Utilise une distro de vrai masochiste

    Posté par  (site web personnel) . En réponse au journal Enfin une distribution Linux ... (qui me convient). Évalué à 5.

    Je ne disconviens pas du tout sur la stabilité de Gentoo, c'est juste qu'une Gentoo, t'as pas un mode "install auto" pour ma mère, à ce que je sache.

    Gentoo est juste une distribution qui demande que l'on passe un peu de temps à configurer sons système, et c'est très bien, si ça plait à certains, c'est cool :-)

    Je trouve personnellement plus compliqué d’avoir un système stable avec ubuntu qu’avec gentoo.

    T'as surement raison, mais j'en sais personnellement rien du tout

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • # Utilise une distro de vrai masochiste

    Posté par  (site web personnel) . En réponse au journal Enfin une distribution Linux ... (qui me convient). Évalué à 2.

    Exherbo que des copains encensent régulièrement, est une Gentoo en plus dur. Et là tu peux faire ce que tu veux.

    Je pense que ça serait pas mal pour ton égo…

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • [^] # Re: Pas remarqué

    Posté par  (site web personnel) . En réponse au journal Free et Google. Effets de bord. Évalué à 2.

    Moi c'est le contraire, j'ai eu des problèmes toute la journée. J'ai d'abord cru que c'était le DNS, au pire il mettait 100ms, et donc c'était bien l'accès google qui était super aléatoire..

    Et effectivement Youtube est toujours ultra lent.

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • [^] # Re: Le faire, c'est mieux quand c'est possible...

    Posté par  (site web personnel) . En réponse au journal Nouvel article de Bret Victor sur sa vision de l'environnement de développement du futur. Évalué à 2.

    Je suis assez d'accord, le problème fondamental, c'est qu'on peut difficilement demander à la machine d'extraire une sémantique du code qu'elle traite, et de la traiter.

    Dans son exemple, il a géré la sémantique des fonctions de dessins basique : créer un rectangle, un disque, etc… Mais quand il va devoir s'attaquer au vast monde, ça va être plus dur.

    Je pense que cette (très bonne idée) va être tranquillement digérée dans les années à venir, en commençant par les interfaces.

    Si on veut passer la marche d'après, il va falloir sauter un gouffre : mettre de l'IA et une ontologie dans l'IDE.

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • # Tiens, un autre

    Posté par  (site web personnel) . En réponse au journal De tout, de rien, des bookmarks, du bla bla. Évalué à 1.

    (surprise) http://vimeo.com/49828449

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • [^] # Re: Bof...

    Posté par  (site web personnel) . En réponse au journal PHP, A Fractal Of Bad Design. Évalué à -1.

    Il faut bien voir aussi que les ressources consacré à l'optimisation de la JVM sont énormes par rapport à ceux de bien d'autres langages à VM ou compilateur.

    Je serai curieux de voir les perfs de Ruby si une dizaine d'ingénieurs avaient pour tâches d'accélérer les performances :-)

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • [^] # Re: Bof...

    Posté par  (site web personnel) . En réponse au journal PHP, A Fractal Of Bad Design. Évalué à 1.

    Scala a un modèle très intéressant, complètement objet, tout en tentant de réutiliser les résultats théoriques sur la sureté de type.
    Utilisant de l'objet, Scala est un peu plus à l'aise pour compiler sur de la JVM.

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • [^] # Re: Bof...

    Posté par  (site web personnel) . En réponse au journal PHP, A Fractal Of Bad Design. Évalué à 1.

    C'est petit comme bashage.

    Les fondamentaux de la JVM n'ont pas évolué depuis 11 ans et posent toujours les même problèmes. .NET a rectifié le tir, très bien, mais il n'en reste pas moins que le design n'ayant pas été fait pour ça, cela pose des problèmes à beaucoup de langages.

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • [^] # Re: Bof...

    Posté par  (site web personnel) . En réponse au journal PHP, A Fractal Of Bad Design. Évalué à 1.

    Sans compter le design douteux de la JVM. Tous les spécialistes de la compilation (objet ou fonctionnel) avec qui j'ai pu en discuter (objet) ou lire des comptes rendus (fonctionnel) pointent le fait que générer du code pour la JVM est une vrai galère, surtout à cause de l’absence de véritable types numériques.

    Xavier Leroy explique très bien pourquoi c'est très galère de compiler pour une JVM ou du .NET

    So, when the source language isn't quite what the VM designers had in
    mind, the "natural mapping" doesn't work and one has to revert to
    encodings of data structures. For instance, integers and floats may
    have to be boxed (wrapped inside an object) most of the time.
    Source-level objects may have to be mapped to VM objects that manage
    themselves their own vtable of methods, bypassing that of the VM.
    Source-level classes map to even more complicated encodings.

    Cela ne veut pas dire que c'est infaisable, mais que c'est beaucoup plus difficile que de générer de l'assembleur processeur.

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • [^] # Re: Old

    Posté par  (site web personnel) . En réponse au journal PHP, A Fractal Of Bad Design. Évalué à 1.

    Et j'oubliai de préciser que ça scale merveilleusement bien (merci OcamlNet) sur une archi multi-cpu.

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • [^] # Re: Old

    Posté par  (site web personnel) . En réponse au journal PHP, A Fractal Of Bad Design. Évalué à 1.

    Pourquoi tant de mépris envers les développeurs web?
    Juste une constatation. Après, j'ai grande admiration pour ceusse qui maîtrise les CSS, et autre HTML5. J'ai jamais rien compris à CSS, malgré mes tentatives et HTML5 c'est guerre mieux. Donc disons que je suis assez consterné de voir le genre de code en ce concerne le traitement des données. Le niveau en culture générale est faible, c'est aussi une constatation "statistique".

    Et puis c'est la foire à la propagande pro ocaml, c'est plus qu'un langage ça devient un mode de pensé.

    C'est complètement vrai, et c'est encore mieux quand ça devient un mode de pensé, tu programme du code avec très peu de bug.
    Mais j'en suis encore très loin, tant le monde du fonctionnel Haskell/OCaml/Scala est vaste et te pousse à l'humilité quand tu te rends compte que ton code est nul et mal pensé.

    As tu déjà écrit des choses réel avec ocaml? (par exemple un truc qui prend en compte plusieurs cpu)

    Oui, en ce moment même d'ailleurs (le temps de switcher de vim à firefox), une GED de 10 000 lignes en OCaml.

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • [^] # Re: Old

    Posté par  (site web personnel) . En réponse au journal PHP, A Fractal Of Bad Design. Évalué à 1.

    Si c'est si pourri, pourquoi un tel effet de masse ?
    Pourquoi les autres n'ont pas percé ?

    J'ai longuement étudié cette question afin de pondre quelques dizaines de page sur la question, et il apparaît, qu'en général, ce sont les technos les plus moyennes qui réussissent. VHS vs Betacam, Frame, Tex lost vs Word/HTML, etc…

    Tu trouveras une tentative d'explication là : http://www.dreamsongs.com/Files/AcceptanceModels.pdf

    En gros un langage doit être avant tout simple.
    J'en ai explicité le modèle ici : https://linuxfr.org/nodes/86566/comments/1246354

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • [^] # Re: Réponses

    Posté par  (site web personnel) . En réponse au journal PHP, A Fractal Of Bad Design. Évalué à -1.

    Tu t'attendais à quoi pour une fonction qui agit sur des éléments du langage lui-même, à savoir les variables ? En C++, del, c'est une fonction peut-être ?

    Vu que le design de C++ est à peu près aussi consternant que celui de PHP (avec du niveau en plus, tout de même), … à mieux (cf plus loin)

    Donc empty($var) fonctionne mais empty($var || $var2) provoque un parse error !!

    Et ce serait censé donner quoi à part une erreur au juste ?

    Ça serait censer parser le code, parcourir gentillement l'AST et te cracher une belle erreur, en te disant que non là c'est pas possible, car sémantiquement ça veut rien dire.
    Mais mettre ça dans la grammaire, tu me diras ce que tu veux, moi je trouve ça crade.

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • [^] # Re: Questions

    Posté par  (site web personnel) . En réponse au journal Linux from scratch face à udev. Évalué à 3.

    Typique de LinuxFr : avis bien argumenté, bien structuré, avec un raisonnement en apparence solide (car ce fut surement le cas à une époque).

    A contrario, j'ai vu nombre d'idées intéressantes se faire jeter car mal présentées.

    Toujours le même principe : il faut mâcher le boulot du lecteur, la difficulté de comprendre le message est déjà bien suffisante à ses yeux…

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • [^] # Re: C'est triste

    Posté par  (site web personnel) . En réponse au journal Au diable le karma. Évalué à 3.

    Je viens de découvrir que c'était lui. Il m'avait énormément marqué dans la ligne verte, plus que Tom Hanks en fait.

    Un grand monsieur.

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • [^] # Re: Un peu faible

    Posté par  (site web personnel) . En réponse au journal Les types fantômes. Évalué à 2.

    Tu ne jouais pas au jeu des sept différences quand tu étais petit ?

    Non ça me gonflais, je démontais mes jouets ;-)

    Au temps pour moi :-)

    N'étant pas dans les petits papiers de Leroy et Garrigues, ça signifie quoi '_a  ? Qu c'est "plus" polymorphique ?

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • [^] # Re: Un peu faible

    Posté par  (site web personnel) . En réponse au journal Les types fantômes. Évalué à 2.

    C'est très bizarre ! Voici mon transcript :

    $ ocaml
            OCaml version 4.00.0
    
    # module Foo : sig
      type 'a foo
      val inject : 'a -> 'a foo
    end = struct
     type 'a foo = 'a
     let inject x = x
    end            ;;            
    module Foo : sig type 'a foo val inject : 'a -> 'a foo end
    # Foo.inject [];;
    - : '_a list Foo.foo = <abstr>
    # Foo.inject 6;; 
    - : int Foo.foo = <abstr>
    # module Foo : sig
      type +'a foo
      val inject : 'a -> 'a foo
    end = struct
     type 'a foo = 'a
     let inject x = x
    end            ;;            
    module Foo : sig type +'a foo val inject : 'a -> 'a foo end
    # Foo.inject [];;
    - : 'a list Foo.foo = <abstr>
    # Foo.inject 6;; 
    - : int Foo.foo = <abstr>
    # 
    
    

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • [^] # Re: Un peu faible

    Posté par  (site web personnel) . En réponse au journal Les types fantômes. Évalué à 2. Dernière modification le 03 septembre 2012 à 12:07.

    J'ai essayé

    module Foo : sig
      type 'a foo
      val inject : 'a -> 'a foo
    end = struct
     type 'a foo = 'a
     let inject x = x
    end
    
    
    module Foo : sig
      type +'a foo
      val inject : 'a -> 'a foo
    end = struct
     type 'a foo = 'a
     let inject x = x
    end
    
    

    Et les deux versions se comportent exactement de la même façon, ne restreignent rien

     Foo.inject [];;
    - : 'a list Foo.foo = <abstr> 
    
    
     Foo.inject 6;;
    - : int Foo.foo = <abstr> 
    
    

    Je suppose que c'est normal ?

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • [^] # Re: Un peu faible

    Posté par  (site web personnel) . En réponse au journal Les types fantômes. Évalué à 2.

    Très intéressant !

    Questions :

    • Quel est l'intérêt pratique de la covariance ? J'ai du mal à imaginer
    • Comment ta fonction de cast "sait" si elle va renvoyer un type nom ou prénom ?

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • [^] # Re: En C++...

    Posté par  (site web personnel) . En réponse au journal Les types fantômes. Évalué à 2.

    Ce qui est marrant dans cet exemple, c'est que ce n'est pas le compilateur qui détecte l'erreur de type, mais c'est le fait que le compilateur exécute le code liés aux templates qui va le faire déboucher sur une erreur d'exécution lors de la phase de compilation.

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • [^] # Re: Comme Hibernate ne savait pas que c'était impossible, ils l'ont fait.

    Posté par  (site web personnel) . En réponse au journal Les types fantômes. Évalué à 0.

    Autant C++ à force de sédimentation permet de l'exprimer (voir plus bas), autant la sémantique de Java est absolument pas faite pour ça. D'où ce genre de hack.

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • [^] # Re: types de données algébriques généralisés ?

    Posté par  (site web personnel) . En réponse à la dépêche OCaml 4.00.0 est sorti. Évalué à 2.

    Disons que l'explication fournie par le manuel ne m'a toujours pas permis de comprendre les GADT..

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • [^] # Re: Explications ?

    Posté par  (site web personnel) . En réponse au journal Valve prend Linux au sérieux. Évalué à 2.

    Au debut c'est sur, j'ai mis un petit moment a m'y habituer, comprendre comment faire quoi. Mais perso j'ai tendance a voir cette nouvelle UI comme un mode qui cible specifiquement l'utilisation en tablette. Je ne m'attends pas a voir Photoshop ou SAP sortir en mode Metro par exemple.

    Oui voilà, c'est très bien en tablet, mais à la souris, c'est juste l'horreur

    Euh non certainement pas. Deja il est plus rapide que 7 sur le meme materiel, ensuite il supporte le meme matos, et il est tout aussi stable.

    Ça, falloir attendre de voir…

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker