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, une introduction, mais vite
Une première prise en main du langage de calcul par Thibaut Cuvelier

Le , par dourouc05

0PARTAGES

15  0 
Julia est un langage de programmation récent orienté (très haute) performance : il s'agit de l'un des très rares langages à être utilisé sur un superordinateur ! Par exemple, il a été utilisé pour le projet Celeste, qui consiste en l'analyse d'images astronomiques : les chercheurs ont pu cataloguer 188 millions d'objets astronomiques, dénichés dans pas moi de 178 téraoctets de données, en moins de quinze minutes — le fruit de trois années de recherche.

Julia a ainsi été préféré au C, au C++ ou au Fortran, les trois langages de prédilection pour ce genre d'application. En effet, ces langages ont l'avantage de limiter leur impact sur la performance des applications : on a accès très directement à la machine, sans mécanisme lourd comme une machine virtuelle. De plus, les compilateurs optimisent très fortement le code généré, pour qu'il tourne plus vite. Julia dispose des mêmes avantages (donc en performance, point crucial pour cette application), tout en étant plus facile à utiliser : il s'agit d'un langage bien plus dynamique (comme Python ou Ruby), avec des notations mathématiques habituelles (il est similaire à MATLAB, Octave ou encore Fortran).

Lire l'introduction

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

Avatar de Pyramidev
Expert confirmé https://www.developpez.com
Le 27/02/2020 à 13:25
Bonjour,

Je cite un extrait du tutoriel :

Les boucles for ne fonctionnent pas comme dans la majorité des langages : Julia préfère itérer sur un conteneur qu'incrémenter manuellement une variable ; il n'existe pas de forme avec trois arguments (initialisation, condition, mise à jour, comme en C). Ici, la boucle itère sur une plage de nombres, entre 1 et 10, avec un incrément d'une unité. On pourrait aussi itérer sur les éléments d'un tableau :

Code Julia : Sélectionner tout
1
2
3
for i in [1, 3, 4, 9, 10] 
    println(i) 
end

En fait, cette fonctionnalité (le "foreach") existe dans la majorité des langages utilisés dans l'industrie. Parmi les langages les plus populaires dans l'industrie, je crois qu'il n'y a qu'en langage C où la manière idiomatique de parcourir une collection est d'incrémenter manuellement une variable, comme un indice de tableau. Dans les autres langages, pour parcourir une collection, la manière normale est d'utiliser une forme de "foreach".

Exemples :

Code Python : Sélectionner tout
1
2
for i in (1, 3, 4, 9, 10): 
	print(i)
Code JavaScript : Sélectionner tout
[1, 3, 4, 9, 10].forEach(i => console.log(i));
Code C++ : Sélectionner tout
1
2
3
4
5
6
7
8
9
#include <iostream> 
#include <vector> 
  
int main() { 
    for (auto i : std::vector<int>{1, 3, 4, 9, 10}) { 
        std::cout << i << '\n'; 
    } 
    return 0; 
}
Code Java : Sélectionner tout
1
2
3
4
5
6
7
8
public class Program { 
     public static void main(String []args){ 
        int[] array = {1, 3, 4, 9, 10}; 
        for (int i : array) {  
            System.out.println(i); 
        } 
     } 
}
Code C# : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
using System; 
using System.Collections.Generic; 
  
public class Program { 
	public static void Main() { 
		foreach (int element in new List<int>{1, 3, 4, 9, 10}) { 
			Console.WriteLine(element); 
		} 
	} 
}
Code PHP : Sélectionner tout
1
2
3
foreach (array(1, 3, 4, 9, 10) as &$i) { 
    echo "$i\n"; 
}
1  1