• [^] # Re: Pourquoi Rust ?

    Posté par . En réponse au lien Rewrite it in Rust : au delà du meme (Google finance la réécriture en Rust de certains logiciels lib. Évalué à 4.

    Lambda bizarre

    C'est un argument fort. Bizarre par rapport à qui/quoi ?

    Par rapport à la notion mathématiques de lambda. Le typage n'est pas génial par exemple, tu as du typage structurel au moment de la définition d'une lambda mais pas ensuite. Par exemple :

    Function<Integer, Boolean> foo = a -> a % 2; // valide
    Predicate<Integer> bar = a -> a % 2; // valide
    foo = bar; // erreur

    Ça c'est le genre de choses qui peuvent être relou est obliger à passer par :

    foo = bar::test;

    Ce qui est assez moche.

    Mais il n'y a pas que ça, l'arité des fonctions n'est pas véritablement géré ce qui contraint de temps en temps (tu ne peux pas facilement dire que tu ignore des arguments).

    Dernier point au niveau syntaxique tu est obligé de présenter les paramètres même quand tu n'en a pas besoin, là où groovy par exemple ne t'y contraint pas :

    Closure callback = { println 'coucou' } // pas de paramètre
    Closure<Boolean> bar = { it % 2 } // utilisation d'un paramètre déclaré automatiquement

    Ça peut paraître être du sucre syntaxique mais c'est très pratique pour faire des DSL par exemple.

    https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll