Bonjour,
J'ai déjà suffisamment trollé (de façon un peu constructive j'espère) par le passé sur Scala et les raisons pour lesquelles je pense que ce n'est pas une solution idéale pour du développement en équipe malgré mon grand souhait d'utiliser un "meilleur java" (temps de compilation abominable, auteurs de librairies tierces incapables de se contrôler, abus des DSL induits par les largesses syntaxiques etc...) En gros pour résumer ce langage serait parfait pour moi si j'avais besoin de ne lire que mon propre code.
Je sais que c'est un débat de longue haleine de savoir si c'est le langage qui doit poser les limites ou le développeur, c'est arrivé sur les alias de type en C++, sur la redéfinition d'opérateur et sur plein de choses. Et à chacun son avis.
Une fois, l'auteur de Scala avait donné son point de vue sur la question en interview, admis que la grande extensibilité de scala pouvait parfois le déservir et évoqué l'idée d'un Scala 3 qui pourrait revenir à un juste milieu, je me demande si c'est toujours à l'ordre du jour.
_skip, si tu cherches un "meilleur Java" qui soit plus rigide que Scala, avec moins de fonctionnalités, je te suggère de jeter un oeil à Kotlin. C'est littéralement leur but. À noter particulièrement, leur comparaison avec Scala.
Les perspectives pour "Scala 3", plus connu sous le nom de "dotty", sont plutôt de simplifier les fondements du langage. Mais il devrait rester (pratiquement) aussi flexible que Scala 2.
sjrd, ancien rédacteur/modérateur Delphi.
Auteur de Scala.js, le compilateur de Scala vers JavaScript, et directeur technique du Scala Center à l'EPFL.
Découvrez Mes tutoriels.
Merci, je suis déjà ce projet depuis de nombreuses années, tout comme Ceylon. Le truc c'est que dans ma situation c'est un plus difficile pour moi de le "vendre" à mon équipe, déjà parce qu'il est jeune et pas encore en version 1.0. Alors que côté Scala, c'est production-ready depuis un certain temps, en plus je nous ai fait utiliser play2 pour une application d'interface administrateur et là c'était l'occasion rêvée pour introduire ce nouveau langage.
Souvent je me dis que le meilleur ambassadeur d'un langage outre son élégance et ses qualités brutes, c'est un framework de grande qualité qui donne l'impulsion en milieu pro.
Ah oui, ben j'étais mal renseigné j'espérais qu'ils en auraient profiter pour limiter certaines des choses qui peuvent rendre scala pratique pour certains usages (DSL) mais rapidement obfuscants. N'importe quoi qui permettrait de limiter le risque que des gens pondent des codes qui s'écrivent mais qui ne se lisent pas.Les perspectives pour "Scala 3", plus connu sous le nom de "dotty", sont plutôt de simplifier les fondements du langage. Mais il devrait rester (pratiquement) aussi flexible que Scala 2
Pour les livres
Un livre en français pour bien débuter
http://www.editions-ellipses.fr/prod...oducts_id=9877
Sinon le bouquin de Odersky c.f ma critique
Mais
Scala in action
ou
Scala for the Impatient
me semblent plus adapté pour débuter...
Bonne lecture...
Philippe
Enfin celà s'anime par ici
La récursion terminale et le pattern matching ne sont pas des spécificités qui font d'un langage un langage fonctionnel... par contre la notion de fonction et d'immuabilité oui...
Je me demande pourquoi, les optimisations sur la tail resursion n'ont pu être implémentées dans Java...
Le pattern matching tout comme l'immuabilité... tu peux très bien l'obtenir avec Java8 ! Mais comme le dit Sébastien c'est au prix d'efforts ! Mais bon, on peut les avoir
Pour les monades en + (ou plustôt qui manquent on ne sait pas pourquoi...) et autres extensions : il faut suivre, entre autres, les projets https://github.com/aol/cyclops et http://javaslang.com
Pour le reste Scala est-il fonctionnel ? Java est-il fonctionel ? c'est une question de curseur... certains diront que Scala ne peut être dans cette catégorie du fait qu'il accepte l'impurété ! Java doit-il être fonctionnel ? impossible (voire pas souhaitable... autant proposer un Haskell sur la JVM) par contre le curseur peut encore être déplacé... tout en gardant l'essence même de Java !
a+
Philippe
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager