Aller au contenu

Notions de base

Cette page présente la syntaxe que vous utiliserez le plus souvent en tant que débutant.

Le point-virgule est facultatif.

print("Bonjour")
print("Bonjour à nouveau");

Commentaires sur une seule ligne :

# Ceci est un commentaire
print("Sortie visible") # Commentaire en ligne

Commentaires sur plusieurs lignes :

#--
Ce bloc est ignoré.
#--
print("Terminé")

Utilisez var pour définir des variables.

var age = 25
var height = 1.75
var name = "Alice"

Réassigner les valeurs si nécessaire :

var score = 10
score = 12

Syntaxe optionnelle des annotations de type :

var title = "Numo" :: String

Les deux styles d’affichage sont acceptés :

print "Bonjour"
print("Bonjour")

Arrêter l’exécution avec une erreur :

panic("Une erreur s'est produite")

La prise en charge actuelle des expressions de base inclut :

  • Nombres
  • Chaînes de caractères
  • Booléens (true, false)
  • Variables
  • Appels de fonctions
  • Opérateur +
  • Comparaisons : ==, !=, <, <=, >, >=
var a = 10
var b = 20
print(a + b)
print("Bonjour, " + "Numo")

Définissez des fonctions avec func.

func greet(name) {
print("Bonjour, " + name)
}
func ping() {
print("pong")
}
greet("Numo")
ping()

L’implémentation actuelle prend en charge zéro ou un paramètre.

Utilisez if et else pour choisir selon une condition :

if 3 < 5 {
print("trois est plus petit")
} else {
print("inattendu")
}

Utilisez while pour répéter des actions :

var index = 0
while index < 3 {
print(index)
index = index + 1
}

Utilisez for quand vous voulez un initialiseur, une condition et une mise à jour sur une seule ligne :

for var i = 0; i < 5; i = i + 1 {
if i == 2 {
continue
}
if i == 4 {
break
}
print(i)
}

Utilisez return à l’intérieur des fonctions pour renvoyer une valeur :

func sign(value) {
if value == 0 {
return "zéro"
}
return "non nul"
}

Importez les modules intégrés comme ceci :

get math from "internal:math"
print(math.pi())

Essayez un petit exemple mixte :

get math from "internal:math"
get str from "internal:string"
get sys from "internal:system"
var name = "numo"
print("Langue : " + str.upper(name))
print("PI : " + math.pi())
print("Plateforme : " + sys.platform())

Vous pouvez également créer vos propres modules en exportant des fonctions depuis les fichiers .numo.

modules/print.numo :

export func coolPrint(string :: String) {
print(string + ". C'est cool, non ?")
}

main.numo :

get coolPrint from "modules/print.numo"
coolPrint("Bananes")

Utilisez export pour rendre les fonctions disponibles à l’importation. Importez-les avec get ... from "chemin/vers/fichier.numo". Les chemins absolus et relatifs sont supportés.