Scala (langage)
langage de programmation / De Wikipedia, l'encyclopédie encyclopedia
Cher Wikiwand IA, Faisons court en répondant simplement à ces questions clés :
Pouvez-vous énumérer les principaux faits et statistiques sur Scala (langage)?
Résumez cet article pour un enfant de 10 ans
Pour les articles homonymes, voir Scala.
Scala est un langage de programmation multi-paradigme conçu à l'École polytechnique fédérale de Lausanne (EPFL) pour exprimer les modèles de programmation courants dans une forme concise et élégante. Son nom vient de l'anglais Scalable language qui signifie à peu près « langage adaptable » ou « langage qui peut être mis à l'échelle ». Il peut en effet être vu comme un métalangage.
Cet article ne s'appuie pas, ou pas assez, sur des sources secondaires ou tertiaires ().
Pour améliorer la vérifiabilité de l'article ainsi que son intérêt encyclopédique, il est nécessaire, quand des sources primaires sont citées, de les associer à des analyses faites par des sources secondaires.
Scala | ||
Date de première version | 20 janvier 2004 | |
---|---|---|
Paradigme | Objet, impératif, fonctionnel | |
Auteur | Martin Odersky | |
Développeur | Programming Methods Laboratory of EPFL | |
Dernière version | 3.4.0 ()[1] | |
Version en développement | 3.0.0-RC3 ()[2] 3.1.0-RC2 ()[3] 3.1.1-RC1 ()[4] 3.1.1-RC2 ()[5] 3.1.2-RC1 ()[6] 3.1.2-RC2 ()[7] 3.1.2-RC3 ()[8] 3.2.0 ()[9] 3.2.1-RC2 ()[10] 3.2.1-RC2 ()[10] |
|
Typage | Statique, fort, inféré, structurel | |
Influencé par | Eiffel, Java, Pizza[11], Haskell, Erlang, Standard ML, OCaml, Smalltalk | |
Écrit en | Scala | |
Système d'exploitation | JVM, CLR | |
Licence | BSD | |
Site web | scala-lang.org | |
Extension de fichier | scala et sc | |
modifier |
Scala intègre les paradigmes de programmation orientée objet et de programmation fonctionnelle, avec un typage statique. Il concilie ainsi ces deux paradigmes habituellement opposés (à de rares exceptions près, telle que le langage OCaml) et offre au développeur la possibilité de choisir le paradigme le plus approprié à son problème.
Il est prévu pour être compilé en bytecode Java (exécutable sur la JVM), ou .NET. Seule la plateforme Java est supportée officiellement par l'EPFL.
Si on souhaite l'utiliser exclusivement avec la JVM, il est alors possible d'utiliser les bibliothèques écrites en Java de façon complètement transparente. Ainsi, Scala bénéficie de la maturité et de la diversité des bibliothèques qui ont fait la force de Java depuis une dizaine d'années. De plus, il est possible d'invoquer du code écrit en Scala à partir de programmes écrits en Java ce qui facilite la transition de Java à Scala.
Les développeurs habitués à un seul paradigme (par exemple ceux ayant utilisé principalement Java qui, lui, repose sur la programmation orientée objet) peuvent trouver ce langage déroutant et difficile car il nécessite l'apprentissage de concepts différents si on veut pouvoir exploiter tout son potentiel. Néanmoins, il est tout à fait possible de l'utiliser dans un premier temps comme remplaçant de Java, en profitant alors de sa syntaxe épurée, puis d'utiliser les différents « nouveaux » concepts au fur et à mesure de leur apprentissage.