Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Julia : un aperçu des futurs langages de programmation
Vers une utilisation polyvalente des langages de programmation ?

Le , par Arsene Newman

110PARTAGES

5  1 
Quel est le résultat escompté lorsqu’on crée un simulateur de réseaux sans fil en se basant sur quatre langages de programmation différents ? Un code illisible et un programme difficile à maintenir. Mais alors, quelle solution serait envisageable ? Créer un nouveau langage de programmation, capable de remplacer les quatre précédents.

C’est la folle histoire de Stefan Karpinski, un informaticien chevronné avec plusieurs années d’expérience qui face à son calvaire, a décidé de relever le défi : « Développer un langage de programmation rapide, capable d’être utilisé pour n'importe quelle tâche ».

Après avoir partagé sa frustration avec d’autres développeurs, Karpinski s’est entouré de Viral Shah et Jeff Bezanson, pour créer le langage Julia. Ils se sont alors appuyés sur les expertises de Jeff Bezanson, ce dernier ayant longuement étudié les langages de programmation et leur paradigme, ainsi que sur celle du mathématicien, informaticien de renom Alan Edelamn et de son équipe de recherche.

Julia s’inspire de différents langages de programmation tels que Matlab, Lisp, C, Python, Perl, Ruby. De ce fait, Julia est un langage de programmation multi paradigme et à typage dynamique. En ce qui concerne la compilation, elle est faite à la volée grâce à l’utilisation de la machine virtuelle LLVM. La première version a été publiée en 2012, sous licence MIT.

Autres points forts, son utilisation polyvalente. En effet, même si Julia est plus approprié dans le cadre des mathématiques avancées et des statistiques, car il offre des performances assez proches du langage C [Voir ce benchmark], le cadre de son utilisation n’a pas été clairement déterminé et ses concepteurs ne cessent de le développer et de l’améliorer pour élargir ses champs d’application. À noter aussi que sa conception a été axée sur le support du parallélisme et du grid computing.

Enfin, selon ses concepteurs, il ne s’agit pas là de remplacer les langages les plus courants, mais plutôt de donner un aperçu des futurs langages de programmation. De plus, la culture populaire voudrait qu’il y ait des langages de programmation à chaque effet, certains étant plus rapides que d’autre, alors qu’idéalement, ne subsisteront que les langages de programmation les plus rapides.

Source : Page officielle de Julia

Et vous ?

Qu’en pensez-vous ?

Pensez-vous que les langages de programmation futurs seront polyvalents, ou bien seront-ils calqués sur des paradigmes distincts pour des usages différents ?

Une erreur dans cette actualité ? Signalez-le nous !

Avatar de Paul TOTH
Expert éminent sénior https://www.developpez.com
Le 06/02/2014 à 17:46
Citation Envoyé par Hannibal90 Voir le message

Qu’en pensez-vous ?
Pensez-vous que les langages de programmation futurs seront polyvalents, ou bien seront-ils calqués sur des paradigmes distincts pour des usages différents ?
encore de braves développeurs qui cherchent le St Graal de la programmation.

tant qu'il y aura des développeurs il y aura de nouveaux langages, parfois très intéressants parfois imbuvables et toujours des gens pour se l'approprier et prétendre dans le meilleur des cas qu'il suffit à leurs besoins, ou dans le pire des cas que c'est le meilleur de tous les langages.
20  1 
Avatar de moldavi
Membre expert https://www.developpez.com
Le 08/02/2014 à 1:17
Bonjour.

Citation Envoyé par Hannibal90 Voir le message

De ce fait, Julia est un langage de programmation multi paradigme et à typage dynamique.
Un langage avec typage dynamique...

Le typage dynamique est une plaie dans le monde des développeurs. Si ce langage prétend être plus lisible qu'un langage typé, c'est peine perdue.

Le typage dynamique ajoute une complexité que les IDE ne peuvent pas déchiffrée pendant l'écriture du code et pendant sa compilation. Donc le débugage se fait à l'exécution. Une perte de temps incommensurable pour le développeur.

PS: j'en fait actuellement l'expérience avec PHP.
12  2 
Avatar de
https://www.developpez.com
Le 07/02/2014 à 9:53
c'est a partir de gens comme ca que le choses evolues sinon on ne fait plus rien et on stop l'evolution.
10  1 
Avatar de super_navide
Nouveau Candidat au Club https://www.developpez.com
Le 10/02/2014 à 17:43
je suis d'accord , les langages non typés sont une plaie pour la maintenance la retro documentation etc...
3  0 
Avatar de gangsoleil
Modérateur https://www.developpez.com
Le 16/09/2014 à 16:26
C'est bien de vouloir un langage qui fait tout, mais en fait non... Pourquoi est-ce que je voudrai un outil qui fait tout, alors que j'ai besoin d'un tournevis ? Est-ce qu'il existe une voiture qui fait tout, de la 2CV à la formule 1 ?

Et pour ce qui est du typage dynamique, je ne vois pas le soucis (mais je ne connais pas PHP).

Et si un IDE n'est pas capable de le gérer, ce n'est pas forcément que le langage est mauvais.
2  0 
Avatar de Omote
Membre averti https://www.developpez.com
Le 07/02/2014 à 14:39
Je pense qu'il est préférable de faire progresser les langages existant quitte a modifier les façons de faire au risque de créer un manque de rétrocompatibilité plutôt de qu'inventé un nouveau langage qui ne fera que grossir le stock des "standards".

On ne parle pas d'une évolution avec Julia mais d'une création et en imaginant qu'il soit rependu dans 5 ans, on trouvera encore des cas de figure où il ne pourra pas être utilisé.
1  0 
Avatar de ELw.py
Membre à l'essai https://www.developpez.com
Le 17/02/2015 à 1:16
Mon expérience de moulineur de nombres, utilisant plutôt MATLAB que C[.*] ou Fortran sauf quand les outils me sont fournis et qu'ils fonctionnent (!), m'étant essayé avec un succès mitigé à Python, et utilisant R ou gnuplot quand c'est nécessaire :

Découverte de Julia, « par hasard ». J'avais justement à programmer une exploration statistique sur quelques milliers de spectres, graphiques compris. Réalisation du programme depuis l'instal. de l'interprète-compilo aux premiers résultats probant, quelques heures ! Première phase terminée en moins d'une semaine, bref, pas plus d'un ou deux jours "perdus" par rapport à la réalisation avec mon outil de prédilection. Et la satisfaction d'utiliser un outil libre de calcul intense réellement effectif.

En ce qui concerne mes usages, je me fiche pas mal de l'aspect "universel" du langage, je ne code pas d'appli. internet, ni d'interface GUI lourde. Pour ce qui est de faire du calcul type "petite ingénierie", "calcul scientifique non-intensif sur données abondantes", une fois qu'il sera un peu plus mature dans la diversité des graphiques scientifiques proposés et les quelques packages de calcul proposés (e.g. statistiques multivariées, traitement d'image, quoi que ce soit quasi déjà fait, sauf j'ai la flemme de rédiger des "ponts" vers iceux-là sous Python), les gens de Mathworks ont du souci à se faire. Il me semble que ce qui les sauvait de Python, c'est la relative technicité nécessaire au choix d'une install. ainsi que des packages. Ici, le chargement des packages reprend l'idée de R et son CRAN, il se fait directement sans sortir de l'interprète. Certains configs de Python le font aussi, mais… ça dépend de etc. :-(

Conclusion : je mets mes usages de R et Python entre parenthèses. Me restent Julia et… MATLAB (~deux décennies d'utilisation de pratique).

Mes deux centi-octets.
1  0 
Avatar de Shuty
Membre éprouvé https://www.developpez.com
Le 07/02/2014 à 11:36
c'est a partir de gens comme ca que le choses evolues sinon on ne fait plus rien et on stop l'evolution.
Tout à fait. Sans des gens un peu motivé et parfois bornés on ferait du stationnaire !
0  0 
Avatar de rambc
Membre expérimenté https://www.developpez.com
Le 07/02/2014 à 19:22
Citation Envoyé par Omote Voir le message
On ne parle pas d'une évolution avec Julia mais d'une création et en imaginant qu'il soit rependu dans 5 ans, on trouvera encore des cas de figure où il ne pourra pas être utilisé.
Tout à fait d'accord !
0  0 
Avatar de helix_tp
Nouveau membre du Club https://www.developpez.com
Le 10/02/2014 à 14:34
Je pense comme moldavi pour le typage dynamique, si un programmeur ne sait pas d'avance qu'elle sera le type de sa variable

Ce langage sera surement comme beaucoup d'autre, utilisé par un groupe restreins de scientifiques/mathématiciens.

Je vais y jeter un œil.
0  0