04-05-2012, 09:22 AM
Merci
04-05-2012, 09:22 AM
Merci
04-05-2012, 09:29 AM
(03-05-2012, 03:21 PM)oxman a écrit : Moi depuis que je connais Scala qui allie en gros le meilleur du fonctionnel et de l'objet, je ne peux pas me résoudre à me suffire d'un langage uniquement fonctionnel. Tiens, lis-ça, c'est très partisan mais tu comprendras peut-être pourquoi il te semble ne pas pouvoir te suffire d'un langage uniquement fonctionnel en ayant choisi scala. http://blog.enfranchisedmind.com/posts/s...unctional/
04-05-2012, 10:54 AM
C'est intéressant comme article, du moins surtout les commentaires
Je vais mettre ici le plus intéressant (car l'auteur de l'article ne connait pas assez bien le Scala) Citation :Things aren't quite as verbose as you make them. I'll paste in some Scala interpretter sessions. OCaml's: En effet le fonctionnel de Scala est plus verbeux, mais ne semble pas en tout cas particulièrement moins puissant, c'était sans doute abusé de dire "le meilleur du fonctionnel", mais en tout cas pas loin. Un autre commentaire que j'ai bien aimé : Citation :Scala was built to scale up, not scale down. Car en effet Scala est conçu comme un micro kernel de règles et tout le reste est fait en librairie, n'importe qui, même toi peut facilement étendre Scala pour lui ajouter un truc qui te manque, une syntaxe qui te manque, ou presque ce que tu veux.
04-05-2012, 11:30 AM
Mouais c'est vrai que tu m'avais passé un tuto et que j'avais vu des méthodes de currying beaucoup plus simple que celle présentée par l'auteur de l'article.
Moi ça me gêne ces underscores dans tous les sens ou ces doubles parenthèses, ça rend le code brouillon. (alors que c'est censé être super méga élégant, mais … non). Bon et alors, tu nous a codé un truc avec scala, qu'on voie un peu !?!
04-05-2012, 02:44 PM
Et bien je suis d'accord oui et non avec toi concernant les parenthèses et l'underscore.
Je trouve ça plus lisible : val cinq_premiers = take(5) _ Que ça : cinq_premiers = take 5 Ou tu ne comprends pas que cinq_premiers prend un argument, tu dois regarder la fonction take pour le savoir, au moins en Scala c'est plus lisible. Donc dans ce cas présentement, je préfère le _. Pour les parenthèses : def x(a: Int)(b: Int) = a + b Ca permet d'appeler la fonction comme ça : x(3) { un bloc de code que je veux } Donc je trouve que c'est utile les parenthèses, c'est quoi l'écriture équivalente pour ça en Haskell/Erlang ou autre ?
L'underscore peut servir à se rappeller qu'il faut un argument c'est pas faux. (bon dans ce cas présent la fonction take tu la connais bien).
ben en erlang il n'y a pas de currying, la syntaxe est plutot lourde d'ailleurs. En haskell en gros tu remplaces tes accolades par des parenthèses pour y mettre un bloc de code) ça peut être moche sans l'indentation [edit : code qui marche pas, plus le temps de corriger aujourd'hui] |
|
Sujets apparemment similaires… | |||||
Sujet | Auteur | Réponses | Affichages | Dernier message | |
Comparaison PHP, Ruby et Python | archANJS | 7 | 6 402 |
06-06-2012, 10:26 AM Dernier message: Sephi-Chan |