From 3d19a951926f52b7cafca301919233f4cda513ff Mon Sep 17 00:00:00 2001 From: Daniel Imms Date: Mon, 30 Nov 2015 12:48:13 -0800 Subject: [TypeScript/fr] Make TypeScript indentation consistently 2 spaces fr version of #2041 --- fr-fr/typescript-fr.html.markdown | 58 +++++++++++++++++++-------------------- 1 file changed, 29 insertions(+), 29 deletions(-) (limited to 'fr-fr') diff --git a/fr-fr/typescript-fr.html.markdown b/fr-fr/typescript-fr.html.markdown index b8807104..52d34650 100644 --- a/fr-fr/typescript-fr.html.markdown +++ b/fr-fr/typescript-fr.html.markdown @@ -87,22 +87,22 @@ mySearch = function(src: string, sub: string) { // Les membres des classes sont publiques par défaut. class Point { - // Propriétés - x: number; - - // Constructeur - Les mots clés "public" et "private" dans ce contexte - // génèrent le code de la propriété et son initialisation dans le - // constructeur. Ici, "y" sera défini de la même façon que "x", - // mais avec moins de code. Les valeurs par défaut sont supportées. - constructor(x: number, public y: number = 0) { - this.x = x; - } + // Propriétés + x: number; + + // Constructeur - Les mots clés "public" et "private" dans ce contexte + // génèrent le code de la propriété et son initialisation dans le + // constructeur. Ici, "y" sera défini de la même façon que "x", + // mais avec moins de code. Les valeurs par défaut sont supportées. + constructor(x: number, public y: number = 0) { + this.x = x; + } - // Fonctions - dist() { return Math.sqrt(this.x * this.x + this.y * this.y); } + // Fonctions + dist() { return Math.sqrt(this.x * this.x + this.y * this.y); } - // Membres statiques - static origin = new Point(0, 0); + // Membres statiques + static origin = new Point(0, 0); } var p1 = new Point(10 ,20); @@ -110,17 +110,17 @@ var p2 = new Point(25); // y sera 0 // Héritage class Point3D extends Point { - constructor(x: number, y: number, public z: number = 0) { - // Un appel explicite au constructeur de la super classe - // est obligatoire. - super(x, y); - } + constructor(x: number, y: number, public z: number = 0) { + // Un appel explicite au constructeur de la super classe + // est obligatoire. + super(x, y); + } - // Redéfinition - dist() { - var d = super.dist(); - return Math.sqrt(d * d + this.z * this.z); - } + // Redéfinition + dist() { + var d = super.dist(); + return Math.sqrt(d * d + this.z * this.z); + } } // Modules, "." peut être utilisé comme un séparateur de sous modules. @@ -144,19 +144,19 @@ var s2 = new G.Square(10); // Génériques // Classes class Tuple { - constructor(public item1: T1, public item2: T2) { - } + constructor(public item1: T1, public item2: T2) { + } } // Interfaces interface Pair { - item1: T; - item2: T; + item1: T; + item2: T; } // Et fonctions var pairToTuple = function(p: Pair) { - return new Tuple(p.item1, p.item2); + return new Tuple(p.item1, p.item2); }; var tuple = pairToTuple({ item1:"hello", item2:"world"}); -- cgit v1.2.3 From 0fbf289e3cbce3f2b6e830d5dcf1c8d3685a88a1 Mon Sep 17 00:00:00 2001 From: Adam Bard Date: Wed, 6 Jan 2016 03:14:04 +0800 Subject: Update go-fr.html.markdown --- fr-fr/go-fr.html.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'fr-fr') diff --git a/fr-fr/go-fr.html.markdown b/fr-fr/go-fr.html.markdown index 16558e7e..9d8bef70 100644 --- a/fr-fr/go-fr.html.markdown +++ b/fr-fr/go-fr.html.markdown @@ -3,7 +3,7 @@ name: Go category: language language: Go lang: fr-fr -filename: learngo.go +filename: learngo-fr.go contributors: - ["Sonia Keys", "https://github.com/soniakeys"] - ["Christopher Bess", "https://github.com/cbess"] -- cgit v1.2.3 From e91cb98abedd979f67acdc08dd7cb81b75f317cc Mon Sep 17 00:00:00 2001 From: Cedric HT Date: Sun, 17 Jan 2016 19:38:14 +0100 Subject: Translated Wolfram tutorial to french --- fr-fr/wolfram-fr.html.markdown | 166 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 166 insertions(+) create mode 100644 fr-fr/wolfram-fr.html.markdown (limited to 'fr-fr') diff --git a/fr-fr/wolfram-fr.html.markdown b/fr-fr/wolfram-fr.html.markdown new file mode 100644 index 00000000..d297bd74 --- /dev/null +++ b/fr-fr/wolfram-fr.html.markdown @@ -0,0 +1,166 @@ +--- +language: wolfram +contributors: + - ["hyphz", "http://github.com/hyphz/"] + - ["altaris", "http://github.com/altaris/"] +filename: learnwolfram.nb +--- + +Le langage Wolfram est utilisé dans les programmes suivants : +* La ligne de commandes interactive noyau du Raspberry Pi, mais elle ne peut pas +gérer des éléments graphiques. +* _Mathematica_, un éditeur de texte riche spécialisé pour les mathématiques : +appuyer sur `Shift + Entrée` dans une cellule de code crée un nouvelle cellule +contenant le résultat. +* _Wolfram Wokbench_, une variante d'Eclipse spécialisée pour le langage +Wolfram. + +Ce code d'exemple peut être utilisé et modifié dans ces logiciels. Cependant, le +copier-coller directement dans Mathematica peut causer des problèmes de +formatage, car il ne contient aucune information de mise en page. + +``` +(* Ceci est un commentaire *) + +(* Dans Mathematica, au lieu d'utiliser ces commentaires, vous pouvez créer des + cellules de texte et insérer de jolies images *) + +(* Saisissez une opération et appuyez sur Shift + Entrée pour obtenir le + résultat *) +2*2 (* 4 *) +5+8 (* 13 *) + +(* Appels de fonction *) +(* Le langage Wolfram est sensible à la casse *) +Sin[Pi/2] (* 1 *) + +(* Syntaxe alternative pour les appels de fonction à 1 paramètre *) +Sin@(Pi/2) (* 1 *) +(Pi/2) // Sin (* 1 *) + +(* Dans le langage Wolfram, toutes les expressions sont en réalité des appels de + fonction *) +Times[2, 2] (* 4 *) +Plus[5, 8] (* 13 *) + +(* Utiliser une variable pour la première fois la déclare globalement *) +x = 5 (* 5 *) +x == 5 (* True, l'assignation et le test d'égalité est écrit comme + dans le C *) +x (* 5 *) +x = x + 5 (* 10 *) +x (* 10 *) +Set[x, 20] (* TOUT est un appel de fonction, TOUUUUUUUUT *) +x (* 20 *) + +(* Le langage Wolfram effectue des manipulations symboliques, donc utiliser des + variables non déclarées n'est pas illégal *) +cow + 5 (* 5 + cow, comme cow n'est pas déclarée, l'évaluation + s'arrête là *) +cow + 5 + 10 (* 15 + cow, on évalue ce qu'on peut... *) +% (* 15 + cow, % représente le dernier résultat *) +% - cow (* 15, les variables non déclarées peuvent quand même + s'annuler *) +moo = cow + 5 (* Attention : moo est ici une expression et non un nombre *) + +(* Déclaration d'une fonction *) +Double[x_] := x * 2 (* Le symbole := empêche l'évaluation immédiate du terme + à droite *) +Double[10] (* 20 *) +Double[Sin[Pi/2]] (* 2 *) +Double @ Sin @ (Pi/2) (* 2, Utiliser @ évite les paquets de crochets + fermants si moches *) +(Pi/2) // Sin // Double(* 2, Utiliser // permet d'écrire les fonctions dans + l'ordre d'appel *) + +(* Pour la programmation impérative, utiliser ; pour séparer les expressions *) +MyFirst[] := (Print@"Hello"; Print@"World") (* Les parenthèses sont nécessaires + car ; est prioritaire sur := *) +MyFirst[] (* Hello World *) + +(* Boucles For à la C *) +PrintTo[x_] := For[y=0, y 2, "Red" -> 1|> (* Crée une table associative *) +myHash[["Green"]] (* 2, l'utilise *) +myHash[["Green"]] := 5 (* 5, la modifie *) +myHash[["Puce"]] := 3.5 (* 3.5, l'étend *) +KeyDropFrom[myHash, "Green"] (* Supprime la clé "Green" *) +Keys[myHash] (* {Red} *) +Values[myHash] (* {1} *) + +(* Pour finir, toute bonne démonstration du langage Wolfram contient un + Manipulate ! *) +Manipulate[y^2, {y, 0, 20}] (* Crée une interface graphique interactive qui + affiche y^2, permettant à l'utilisateur de + modifier la valeur de y grâce à un contrôle + allant de 0 à 20. Ne fonctionne que si le + logiciel utilisé gère les éléments graphique. *) +``` + +## Envie d'aller plus loin ? + +* [Documentation du langage Wolfram (en anglais)] +(http://reference.wolfram.com/language/) \ No newline at end of file -- cgit v1.2.3 From c70f53aabea745d4450aa51abdc33aa1ac51bdd2 Mon Sep 17 00:00:00 2001 From: Cedric HT Date: Sun, 17 Jan 2016 21:53:21 +0100 Subject: Translated make tutorial to french --- fr-fr/make-fr.html.markdown | 266 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 266 insertions(+) create mode 100644 fr-fr/make-fr.html.markdown (limited to 'fr-fr') diff --git a/fr-fr/make-fr.html.markdown b/fr-fr/make-fr.html.markdown new file mode 100644 index 00000000..8643ba45 --- /dev/null +++ b/fr-fr/make-fr.html.markdown @@ -0,0 +1,266 @@ +--- +language: make +contributors: + - ["Robert Steed", "https://github.com/robochat"] + - ["altaris", "https://github.com/altaris"] +filename: Makefile +--- + +Un makefile est un fichier qui définit un ensemble de règles liées entre elles +pour créer une ou plusieurs cibles. L'idée est d'effectuer le moins de travail +possible afin de mettre à jour la ou les cibles en fonction des dépendances. + +Écrit en un week-end par Stuart Feldman en 1976, le make et les +makefiles sont encore très utilisés (principalement dans les systèmes Unix), +malgré la concurrence et les critiques faites à son égard. + +Le programme make a plusieurs variantes. Dans ce tutoriel, nous utiliserons +l'implémentation standard : GNU make. + +```make + +# Ceci est un commentaire. + +# Un makefile devrait être nommé "Makefile" (avec ou sans la +# majuscule). Il peut alors être exécuté par `make `. +# Ce nommage n'est toutefois pas obligatoire : utiliser +# `make -f "fichier" `. + +# ATTENTION : l'indentation est quant à elle obligatoire, et se fait avec des +# tabulations, pas avec des espaces ! + +#----------------------------------------------------------------------- +# Les basiques +#----------------------------------------------------------------------- + +# Une règle. Elle ne sera exécutée que si fichier0.txt n'existe pas. +file0.txt: + echo "truc" > fichier0.txt + # Même les commentaires sont transférés dans le terminal. + +# Cette règle ne sera exécutée que si fichier0.txt est plus récent que +# fichier1.txt. +file1.txt: fichier0.txt + cat fichier0.txt > fichier1.txt + # Utiliser les même guillemets que dans un terminal. + @cat fichier0.txt >> fichier1.txt + # @ empêche l'affichage de la sortie texte d'une commande. + -@echo 'hello' + # - signifie que la règle devrait continuer à être exécutée si cette + # commande échoue. + +# Un règle peut avoir plusieurs cibles et plusieurs dépendances. +file2.txt fichier3.txt: fichier0.txt fichier1.txt + touch fichier2.txt + touch fichier3.txt + +# Make affichera un avertissement si le makefile comporte plusieurs règles pour +# une même cible. Cependant les règles vides ne comptent pas, et peuvent être +# utilisées pour ajouter des dépendances plus facilement. + +#----------------------------------------------------------------------- +# Fausses règles +#----------------------------------------------------------------------- + +# Une fausse règle est un règle qui ne correspond pas à un fichier. +# Par définition, elle ne peut pas être à jour, et donc make l’exécutera à +# chaque demande. +all: maker process + +# La déclaration des règles peut être faite dans n'importe quel ordre. +maker: + touch ex0.txt ex1.txt + +# On peut transformer une règle en fausse règle grâce à la cible spéciale +# suivante : +.PHONY: all maker process + +# Un règle dépendante d'une fausse règle sera toujours exécutée. +ex0.txt ex1.txt: maker + +# Voici quelques exemples fréquents de fausses règles : all, make, clean, +# install... + +#----------------------------------------------------------------------- +# Variables automatiques et wildcards +#----------------------------------------------------------------------- + +# Utilise un wildcard pour des noms de fichier +process: fichier*.txt + @echo $^ # $^ est une variable contenant la liste des dépendances de la + # cible actuelle. + @echo $@ # $@ est le nom de la cible actuelle. En cas de cibles + # multiples, $@ est le nom de la cible ayant causé l'exécution + # de cette règle. + @echo $< # $< contient la première dépendance. + @echo $? # $? contient la liste des dépendances qui ne sont pas à jour. + @echo $+ # $+ contient la liste des dépendances avec d'éventuels + # duplicatas, contrairement à $^. + @echo $| # $| contient la liste des cibles ayant préséance sur la cible + # actuelle. + +# Même si la définition de la règle est scindée en plusieurs morceaux, $^ +# listera toutes les dépendances indiquées. +process: ex1.txt fichier0.txt +# Ici, fichier0.txt est un duplicata dans $+. + +#----------------------------------------------------------------------- +# Pattern matching +#----------------------------------------------------------------------- + +# En utilisant le pattern matching, on peut par exemple créer des règles pour +# convertir les fichiers d'un certain format dans un autre. +%.png: %.svg + inkscape --export-png $^ + +# Make exécute une règle même si le fichier correspondant est situé dans un sous +# dossier. En cas de conflit, la règle avec la meilleure correspondance est +# choisie. +small/%.png: %.svg + inkscape --export-png --export-dpi 30 $^ + +# Dans ce type de conflit (même cible, même dépendances), make exécutera la +# dernière règle déclarée... +%.png: %.svg + @echo cette règle est choisie + +# Dans ce type de conflit (même cible mais pas les mêmes dépendances), make +# exécutera la première règle pouvant être exécutée. +%.png: %.ps + @echo cette règle n\'est pas choisie si *.svg et *.ps sont présents + +# Make a des règles pré établies. Par exemple, il sait comment créer la cible +# *.o à partir de *.c. + +# Les makefiles plus vieux utilisent un matching par extension de fichier. +.png.ps: + @echo cette règle est similaire à une règle par pattern matching + +# Utiliser cette syntaxe pour déclarer une règle comme règle avec matching par +# extension de fichier. +.SUFFIXES: .png + +#----------------------------------------------------------------------- +# Variables, ou macros +#----------------------------------------------------------------------- + +# Les variables sont des chaînes de caractères. + +variable = Ted +variable2="Sarah" + +echo: + @echo $(variable) + @echo ${variable2} + @echo $variable # Cette syntaxe signifie $(n)ame et non pas $(variable) ! + @echo $(variable3) # Les variables non déclarées valent "" (chaîne vide). + +# Les variables sont déclarées de 4 manières, de la plus grande priorité à la +# plus faible : +# 1 : dans la ligne de commande qui invoque make, +# 2 : dans le makefile, +# 3 : dans les variables d’environnement du terminal qui invoque make, +# 4 : les variables prédéfinies. + +# Assigne la variable si une variable d’environnement du même nom n'existe pas +# déjà. +variable4 ?= Jean + +# Empêche cette variable d'être modifiée par la ligne de commande. +override variable5 = David + +# Concatène à une variable (avec un espace avant). +variable4 +=gris + +# Assignations de variable pour les règles correspondant à un pattern +# (spécifique à GNU make). +*.png: variable2 = Sara # Pour toutes les règles correspondant à *.png, et tous + # leurs descendants, la variable variable2 vaudra + # "Sara". +# Si le jeux des dépendances et descendances devient vraiment trop compliqué, +# des inconsistances peuvent survenir. + +# Certaines variables sont prédéfinies par make : +affiche_predefinies: + echo $(CC) + echo ${CXX} + echo $(FC) + echo ${CFLAGS} + echo $(CPPFLAGS) + echo ${CXXFLAGS} + echo $(LDFLAGS) + echo ${LDLIBS} + +#----------------------------------------------------------------------- +# Variables : le retour +#----------------------------------------------------------------------- + +# Les variables sont évaluées à chaque instance, ce qui peut être coûteux en +# calculs. Pour parer à ce problème, il existe dans GNU make une seconde +# manière d'assigner des variables pour qu'elles ne soient évaluées qu'une seule +# fois seulement. + +var := wesh +var2 ::= $(var) mec # := et ::= sont équivalents. + +# Ces variables sont évaluées procéduralement (i.e. dans leur ordre +# d'apparition), contrairement au règles par exemple ! + +# Ceci ne fonctionne pas. +var3 ::= $(var4) et fais de beaux rêves +var4 ::= bonne nuit + +#----------------------------------------------------------------------- +# Fonctions +#----------------------------------------------------------------------- + +# Make a une multitude de fonctions. La syntaxe générale est +# $(fonction arg0,arg1,arg2...). + +# Quelques exemples : + +fichiers_source = $(wildcard *.c */*.c) +fichiers_objet = $(patsubst %.c,%.o,$(fichiers_source)) + +ls: * src/* + @echo $(filter %.txt, $^) + @echo $(notdir $^) + @echo $(join $(dir $^),$(notdir $^)) + +#----------------------------------------------------------------------- +# Directives +#----------------------------------------------------------------------- + +# Inclut d'autres makefiles. +include meuh.mk + +# Branchements conditionnels. +sport = tennis +report: +ifeq ($(sport),tennis) # Il y a aussi ifneq. + @echo 'jeu, set et match' +else + @echo "C'est pas ici Wimbledon ?" +endif + +truc = true +ifdef $(truc) # Il y a aussi ifndef. + machin = 'salut' +endif +``` + +## Quelques références + +### En français + ++ [Introduction à Makefile (developpez.com)] +(http://gl.developpez.com/tutoriel/outil/makefile/), ++ [Compilez sous GNU/Linux ! (openclassrooms)] +(https://openclassrooms.com/courses/compilez-sous-gnu-linux). + +### En anglais + ++ [Documentation de GNU make](https://www.gnu.org/software/make/manual/), ++ [Software carpentry tutorial](http://swcarpentry.github.io/make-novice/), ++ Learn C the hard way [ex2](http://c.learncodethehardway.org/book/ex2.html) +[ex28](http://c.learncodethehardway.org/book/ex28.html). \ No newline at end of file -- cgit v1.2.3 From 5c4eba5ef34593a0c6425da64f6a0d7688fca3d2 Mon Sep 17 00:00:00 2001 From: Cedric HT Date: Sun, 17 Jan 2016 21:54:51 +0100 Subject: Removed tabs in header --- fr-fr/make-fr.html.markdown | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'fr-fr') diff --git a/fr-fr/make-fr.html.markdown b/fr-fr/make-fr.html.markdown index 8643ba45..405c47cd 100644 --- a/fr-fr/make-fr.html.markdown +++ b/fr-fr/make-fr.html.markdown @@ -1,8 +1,8 @@ --- language: make contributors: - - ["Robert Steed", "https://github.com/robochat"] - - ["altaris", "https://github.com/altaris"] + - ["Robert Steed", "https://github.com/robochat"] + - ["altaris", "https://github.com/altaris"] filename: Makefile --- -- cgit v1.2.3 From a4e4b76afdb538fa577db8823bb7349ff7872722 Mon Sep 17 00:00:00 2001 From: Cedric HT Date: Mon, 18 Jan 2016 12:07:20 +0100 Subject: Corrections to make-fr ... according to pull request comments: - completed header; - some typos; - finished translating target names. --- fr-fr/make-fr.html.markdown | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) (limited to 'fr-fr') diff --git a/fr-fr/make-fr.html.markdown b/fr-fr/make-fr.html.markdown index 405c47cd..b8255ce7 100644 --- a/fr-fr/make-fr.html.markdown +++ b/fr-fr/make-fr.html.markdown @@ -3,7 +3,8 @@ language: make contributors: - ["Robert Steed", "https://github.com/robochat"] - ["altaris", "https://github.com/altaris"] -filename: Makefile +filename: Makefile-fr +lang: fr-fr --- Un makefile est un fichier qui définit un ensemble de règles liées entre elles @@ -34,23 +35,23 @@ l'implémentation standard : GNU make. #----------------------------------------------------------------------- # Une règle. Elle ne sera exécutée que si fichier0.txt n'existe pas. -file0.txt: +fichier0.txt: echo "truc" > fichier0.txt # Même les commentaires sont transférés dans le terminal. # Cette règle ne sera exécutée que si fichier0.txt est plus récent que # fichier1.txt. -file1.txt: fichier0.txt +fichier1.txt: fichier0.txt cat fichier0.txt > fichier1.txt - # Utiliser les même guillemets que dans un terminal. + # Utiliser la même syntaxe que dans un terminal. @cat fichier0.txt >> fichier1.txt # @ empêche l'affichage de la sortie texte d'une commande. -@echo 'hello' - # - signifie que la règle devrait continuer à être exécutée si cette - # commande échoue. + # - signifie que la règle devrait continuer à s'exécuter si cette commande + # échoue. -# Un règle peut avoir plusieurs cibles et plusieurs dépendances. -file2.txt fichier3.txt: fichier0.txt fichier1.txt +# Une règle peut avoir plusieurs cibles et plusieurs dépendances. +fichier2.txt fichier3.txt: fichier0.txt fichier1.txt touch fichier2.txt touch fichier3.txt @@ -62,7 +63,7 @@ file2.txt fichier3.txt: fichier0.txt fichier1.txt # Fausses règles #----------------------------------------------------------------------- -# Une fausse règle est un règle qui ne correspond pas à un fichier. +# Une fausse règle est une règle qui ne correspond pas à un fichier. # Par définition, elle ne peut pas être à jour, et donc make l’exécutera à # chaque demande. all: maker process @@ -75,7 +76,7 @@ maker: # suivante : .PHONY: all maker process -# Un règle dépendante d'une fausse règle sera toujours exécutée. +# Une règle dépendante d'une fausse règle sera toujours exécutée. ex0.txt ex1.txt: maker # Voici quelques exemples fréquents de fausses règles : all, make, clean, -- cgit v1.2.3 From 8cff05396eeb7059904c52c3c2e62440d6c975b6 Mon Sep 17 00:00:00 2001 From: Cedric HT Date: Mon, 18 Jan 2016 12:16:37 +0100 Subject: Corrected header Added myself as translator. --- fr-fr/make-fr.html.markdown | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'fr-fr') diff --git a/fr-fr/make-fr.html.markdown b/fr-fr/make-fr.html.markdown index b8255ce7..993eccba 100644 --- a/fr-fr/make-fr.html.markdown +++ b/fr-fr/make-fr.html.markdown @@ -2,6 +2,7 @@ language: make contributors: - ["Robert Steed", "https://github.com/robochat"] +translators: - ["altaris", "https://github.com/altaris"] filename: Makefile-fr lang: fr-fr @@ -264,4 +265,4 @@ endif + [Documentation de GNU make](https://www.gnu.org/software/make/manual/), + [Software carpentry tutorial](http://swcarpentry.github.io/make-novice/), + Learn C the hard way [ex2](http://c.learncodethehardway.org/book/ex2.html) -[ex28](http://c.learncodethehardway.org/book/ex28.html). \ No newline at end of file +[ex28](http://c.learncodethehardway.org/book/ex28.html). -- cgit v1.2.3 From db99c9966ce21789dfa4d6618998ea288756d0ae Mon Sep 17 00:00:00 2001 From: Cedric HT Date: Mon, 18 Jan 2016 12:17:50 +0100 Subject: Corrected header - Added muself as translator; - set lang field; - corrected filename field. --- fr-fr/wolfram-fr.html.markdown | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'fr-fr') diff --git a/fr-fr/wolfram-fr.html.markdown b/fr-fr/wolfram-fr.html.markdown index d297bd74..3a69e1d8 100644 --- a/fr-fr/wolfram-fr.html.markdown +++ b/fr-fr/wolfram-fr.html.markdown @@ -2,8 +2,10 @@ language: wolfram contributors: - ["hyphz", "http://github.com/hyphz/"] +translators: - ["altaris", "http://github.com/altaris/"] -filename: learnwolfram.nb +filename: learnwolfram-fr.nb +lang: fr-fr --- Le langage Wolfram est utilisé dans les programmes suivants : @@ -163,4 +165,4 @@ Manipulate[y^2, {y, 0, 20}] (* Crée une interface graphique interactive qui ## Envie d'aller plus loin ? * [Documentation du langage Wolfram (en anglais)] -(http://reference.wolfram.com/language/) \ No newline at end of file +(http://reference.wolfram.com/language/) -- cgit v1.2.3 From 0fe63187a9d61a0daa789ff59fc130b5dc678a34 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric?= Date: Tue, 19 Jan 2016 11:53:13 +0100 Subject: Corrected typos in wolfram-fr --- fr-fr/wolfram-fr.html.markdown | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'fr-fr') diff --git a/fr-fr/wolfram-fr.html.markdown b/fr-fr/wolfram-fr.html.markdown index 3a69e1d8..b9fe986f 100644 --- a/fr-fr/wolfram-fr.html.markdown +++ b/fr-fr/wolfram-fr.html.markdown @@ -110,7 +110,7 @@ BetterPrintTo[x_] := Module[{y}, (For[y=0, y Date: Tue, 19 Jan 2016 12:36:33 +0100 Subject: More typos --- fr-fr/make-fr.html.markdown | 110 ++++++++++++++++++++++---------------------- 1 file changed, 55 insertions(+), 55 deletions(-) (limited to 'fr-fr') diff --git a/fr-fr/make-fr.html.markdown b/fr-fr/make-fr.html.markdown index 993eccba..b404e1a1 100644 --- a/fr-fr/make-fr.html.markdown +++ b/fr-fr/make-fr.html.markdown @@ -37,24 +37,24 @@ l'implémentation standard : GNU make. # Une règle. Elle ne sera exécutée que si fichier0.txt n'existe pas. fichier0.txt: - echo "truc" > fichier0.txt - # Même les commentaires sont transférés dans le terminal. + echo "truc" > fichier0.txt + # Même les commentaires sont transférés dans le terminal. # Cette règle ne sera exécutée que si fichier0.txt est plus récent que # fichier1.txt. fichier1.txt: fichier0.txt - cat fichier0.txt > fichier1.txt - # Utiliser la même syntaxe que dans un terminal. - @cat fichier0.txt >> fichier1.txt - # @ empêche l'affichage de la sortie texte d'une commande. - -@echo 'hello' - # - signifie que la règle devrait continuer à s'exécuter si cette commande - # échoue. + cat fichier0.txt > fichier1.txt + # Utiliser la même syntaxe que dans un terminal. + @cat fichier0.txt >> fichier1.txt + # @ empêche l'affichage de la sortie texte d'une commande. + -@echo 'hello' + # - signifie que la règle devrait continuer à s'exécuter si cette commande + # échoue. # Une règle peut avoir plusieurs cibles et plusieurs dépendances. fichier2.txt fichier3.txt: fichier0.txt fichier1.txt - touch fichier2.txt - touch fichier3.txt + touch fichier2.txt + touch fichier3.txt # Make affichera un avertissement si le makefile comporte plusieurs règles pour # une même cible. Cependant les règles vides ne comptent pas, et peuvent être @@ -71,7 +71,7 @@ all: maker process # La déclaration des règles peut être faite dans n'importe quel ordre. maker: - touch ex0.txt ex1.txt + touch ex0.txt ex1.txt # On peut transformer une règle en fausse règle grâce à la cible spéciale # suivante : @@ -89,17 +89,17 @@ ex0.txt ex1.txt: maker # Utilise un wildcard pour des noms de fichier process: fichier*.txt - @echo $^ # $^ est une variable contenant la liste des dépendances de la - # cible actuelle. - @echo $@ # $@ est le nom de la cible actuelle. En cas de cibles - # multiples, $@ est le nom de la cible ayant causé l'exécution - # de cette règle. - @echo $< # $< contient la première dépendance. - @echo $? # $? contient la liste des dépendances qui ne sont pas à jour. - @echo $+ # $+ contient la liste des dépendances avec d'éventuels - # duplicatas, contrairement à $^. - @echo $| # $| contient la liste des cibles ayant préséance sur la cible - # actuelle. + @echo $^ # $^ est une variable contenant la liste des dépendances de la + # cible actuelle. + @echo $@ # $@ est le nom de la cible actuelle. En cas de cibles + # multiples, $@ est le nom de la cible ayant causé l'exécution + # de cette règle. + @echo $< # $< contient la première dépendance. + @echo $? # $? contient la liste des dépendances qui ne sont pas à jour. + @echo $+ # $+ contient la liste des dépendances avec d'éventuels + # duplicatas, contrairement à $^. + @echo $| # $| contient la liste des cibles ayant préséance sur la cible + # actuelle. # Même si la définition de la règle est scindée en plusieurs morceaux, $^ # listera toutes les dépendances indiquées. @@ -113,33 +113,33 @@ process: ex1.txt fichier0.txt # En utilisant le pattern matching, on peut par exemple créer des règles pour # convertir les fichiers d'un certain format dans un autre. %.png: %.svg - inkscape --export-png $^ + inkscape --export-png $^ # Make exécute une règle même si le fichier correspondant est situé dans un sous # dossier. En cas de conflit, la règle avec la meilleure correspondance est # choisie. small/%.png: %.svg - inkscape --export-png --export-dpi 30 $^ + inkscape --export-png --export-dpi 30 $^ # Dans ce type de conflit (même cible, même dépendances), make exécutera la # dernière règle déclarée... %.png: %.svg - @echo cette règle est choisie + @echo cette règle est choisie # Dans ce type de conflit (même cible mais pas les mêmes dépendances), make # exécutera la première règle pouvant être exécutée. %.png: %.ps - @echo cette règle n\'est pas choisie si *.svg et *.ps sont présents + @echo cette règle n\'est pas choisie si *.svg et *.ps sont présents # Make a des règles pré établies. Par exemple, il sait comment créer la cible # *.o à partir de *.c. # Les makefiles plus vieux utilisent un matching par extension de fichier. .png.ps: - @echo cette règle est similaire à une règle par pattern matching + @echo cette règle est similaire à une règle par pattern matching -# Utiliser cette syntaxe pour déclarer une règle comme règle avec matching par -# extension de fichier. +# Utiliser cette règle spéciale pour déclarer une règle comme ayant un +# matching par extension de fichier. .SUFFIXES: .png #----------------------------------------------------------------------- @@ -152,10 +152,10 @@ variable = Ted variable2="Sarah" echo: - @echo $(variable) - @echo ${variable2} - @echo $variable # Cette syntaxe signifie $(n)ame et non pas $(variable) ! - @echo $(variable3) # Les variables non déclarées valent "" (chaîne vide). + @echo $(variable) + @echo ${variable2} + @echo $variable # Cette syntaxe signifie $(n)ame et non pas $(variable) ! + @echo $(variable3) # Les variables non déclarées valent "" (chaîne vide). # Les variables sont déclarées de 4 manières, de la plus grande priorité à la # plus faible : @@ -177,21 +177,21 @@ variable4 +=gris # Assignations de variable pour les règles correspondant à un pattern # (spécifique à GNU make). *.png: variable2 = Sara # Pour toutes les règles correspondant à *.png, et tous - # leurs descendants, la variable variable2 vaudra - # "Sara". + # leurs descendants, la variable variable2 vaudra + # "Sara". # Si le jeux des dépendances et descendances devient vraiment trop compliqué, -# des inconsistances peuvent survenir. +# des incohérences peuvent survenir. # Certaines variables sont prédéfinies par make : affiche_predefinies: - echo $(CC) - echo ${CXX} - echo $(FC) - echo ${CFLAGS} - echo $(CPPFLAGS) - echo ${CXXFLAGS} - echo $(LDFLAGS) - echo ${LDLIBS} + echo $(CC) + echo ${CXX} + echo $(FC) + echo ${CFLAGS} + echo $(CPPFLAGS) + echo ${CXXFLAGS} + echo $(LDFLAGS) + echo ${LDLIBS} #----------------------------------------------------------------------- # Variables : le retour @@ -202,11 +202,11 @@ affiche_predefinies: # manière d'assigner des variables pour qu'elles ne soient évaluées qu'une seule # fois seulement. -var := wesh -var2 ::= $(var) mec # := et ::= sont équivalents. +var := A B C +var2 ::= $(var) D E F # := et ::= sont équivalents. # Ces variables sont évaluées procéduralement (i.e. dans leur ordre -# d'apparition), contrairement au règles par exemple ! +# d'apparition), contrairement aux règles par exemple ! # Ceci ne fonctionne pas. var3 ::= $(var4) et fais de beaux rêves @@ -225,9 +225,9 @@ fichiers_source = $(wildcard *.c */*.c) fichiers_objet = $(patsubst %.c,%.o,$(fichiers_source)) ls: * src/* - @echo $(filter %.txt, $^) - @echo $(notdir $^) - @echo $(join $(dir $^),$(notdir $^)) + @echo $(filter %.txt, $^) + @echo $(notdir $^) + @echo $(join $(dir $^),$(notdir $^)) #----------------------------------------------------------------------- # Directives @@ -240,14 +240,14 @@ include meuh.mk sport = tennis report: ifeq ($(sport),tennis) # Il y a aussi ifneq. - @echo 'jeu, set et match' + @echo 'jeu, set et match' else - @echo "C'est pas ici Wimbledon ?" + @echo "C'est pas ici Wimbledon ?" endif truc = true -ifdef $(truc) # Il y a aussi ifndef. - machin = 'salut' +ifdef $(truc) # Il y a aussi ifndef. + machin = 'salut' endif ``` -- cgit v1.2.3 From 43c93e3449c2b82bf71529a901034b38077cbcc1 Mon Sep 17 00:00:00 2001 From: Cedric HT Date: Tue, 19 Jan 2016 12:38:39 +0100 Subject: Changed indentation to tabs They were converted to spaces by error in previous commit. oups. --- fr-fr/make-fr.html.markdown | 100 ++++++++++++++++++++++---------------------- 1 file changed, 50 insertions(+), 50 deletions(-) (limited to 'fr-fr') diff --git a/fr-fr/make-fr.html.markdown b/fr-fr/make-fr.html.markdown index b404e1a1..5a1e03e7 100644 --- a/fr-fr/make-fr.html.markdown +++ b/fr-fr/make-fr.html.markdown @@ -1,9 +1,9 @@ --- language: make contributors: - - ["Robert Steed", "https://github.com/robochat"] + - ["Robert Steed", "https://github.com/robochat"] translators: - - ["altaris", "https://github.com/altaris"] + - ["altaris", "https://github.com/altaris"] filename: Makefile-fr lang: fr-fr --- @@ -37,24 +37,24 @@ l'implémentation standard : GNU make. # Une règle. Elle ne sera exécutée que si fichier0.txt n'existe pas. fichier0.txt: - echo "truc" > fichier0.txt - # Même les commentaires sont transférés dans le terminal. + echo "truc" > fichier0.txt + # Même les commentaires sont transférés dans le terminal. # Cette règle ne sera exécutée que si fichier0.txt est plus récent que # fichier1.txt. fichier1.txt: fichier0.txt - cat fichier0.txt > fichier1.txt - # Utiliser la même syntaxe que dans un terminal. - @cat fichier0.txt >> fichier1.txt - # @ empêche l'affichage de la sortie texte d'une commande. - -@echo 'hello' - # - signifie que la règle devrait continuer à s'exécuter si cette commande - # échoue. + cat fichier0.txt > fichier1.txt + # Utiliser la même syntaxe que dans un terminal. + @cat fichier0.txt >> fichier1.txt + # @ empêche l'affichage de la sortie texte d'une commande. + -@echo 'hello' + # - signifie que la règle devrait continuer à s'exécuter si cette commande + # échoue. # Une règle peut avoir plusieurs cibles et plusieurs dépendances. fichier2.txt fichier3.txt: fichier0.txt fichier1.txt - touch fichier2.txt - touch fichier3.txt + touch fichier2.txt + touch fichier3.txt # Make affichera un avertissement si le makefile comporte plusieurs règles pour # une même cible. Cependant les règles vides ne comptent pas, et peuvent être @@ -71,7 +71,7 @@ all: maker process # La déclaration des règles peut être faite dans n'importe quel ordre. maker: - touch ex0.txt ex1.txt + touch ex0.txt ex1.txt # On peut transformer une règle en fausse règle grâce à la cible spéciale # suivante : @@ -89,17 +89,17 @@ ex0.txt ex1.txt: maker # Utilise un wildcard pour des noms de fichier process: fichier*.txt - @echo $^ # $^ est une variable contenant la liste des dépendances de la - # cible actuelle. - @echo $@ # $@ est le nom de la cible actuelle. En cas de cibles - # multiples, $@ est le nom de la cible ayant causé l'exécution - # de cette règle. - @echo $< # $< contient la première dépendance. - @echo $? # $? contient la liste des dépendances qui ne sont pas à jour. - @echo $+ # $+ contient la liste des dépendances avec d'éventuels - # duplicatas, contrairement à $^. - @echo $| # $| contient la liste des cibles ayant préséance sur la cible - # actuelle. + @echo $^ # $^ est une variable contenant la liste des dépendances de la + # cible actuelle. + @echo $@ # $@ est le nom de la cible actuelle. En cas de cibles + # multiples, $@ est le nom de la cible ayant causé l'exécution + # de cette règle. + @echo $< # $< contient la première dépendance. + @echo $? # $? contient la liste des dépendances qui ne sont pas à jour. + @echo $+ # $+ contient la liste des dépendances avec d'éventuels + # duplicatas, contrairement à $^. + @echo $| # $| contient la liste des cibles ayant préséance sur la cible + # actuelle. # Même si la définition de la règle est scindée en plusieurs morceaux, $^ # listera toutes les dépendances indiquées. @@ -113,30 +113,30 @@ process: ex1.txt fichier0.txt # En utilisant le pattern matching, on peut par exemple créer des règles pour # convertir les fichiers d'un certain format dans un autre. %.png: %.svg - inkscape --export-png $^ + inkscape --export-png $^ # Make exécute une règle même si le fichier correspondant est situé dans un sous # dossier. En cas de conflit, la règle avec la meilleure correspondance est # choisie. small/%.png: %.svg - inkscape --export-png --export-dpi 30 $^ + inkscape --export-png --export-dpi 30 $^ # Dans ce type de conflit (même cible, même dépendances), make exécutera la # dernière règle déclarée... %.png: %.svg - @echo cette règle est choisie + @echo cette règle est choisie # Dans ce type de conflit (même cible mais pas les mêmes dépendances), make # exécutera la première règle pouvant être exécutée. %.png: %.ps - @echo cette règle n\'est pas choisie si *.svg et *.ps sont présents + @echo cette règle n\'est pas choisie si *.svg et *.ps sont présents # Make a des règles pré établies. Par exemple, il sait comment créer la cible # *.o à partir de *.c. # Les makefiles plus vieux utilisent un matching par extension de fichier. .png.ps: - @echo cette règle est similaire à une règle par pattern matching + @echo cette règle est similaire à une règle par pattern matching # Utiliser cette règle spéciale pour déclarer une règle comme ayant un # matching par extension de fichier. @@ -152,10 +152,10 @@ variable = Ted variable2="Sarah" echo: - @echo $(variable) - @echo ${variable2} - @echo $variable # Cette syntaxe signifie $(n)ame et non pas $(variable) ! - @echo $(variable3) # Les variables non déclarées valent "" (chaîne vide). + @echo $(variable) + @echo ${variable2} + @echo $variable # Cette syntaxe signifie $(n)ame et non pas $(variable) ! + @echo $(variable3) # Les variables non déclarées valent "" (chaîne vide). # Les variables sont déclarées de 4 manières, de la plus grande priorité à la # plus faible : @@ -177,21 +177,21 @@ variable4 +=gris # Assignations de variable pour les règles correspondant à un pattern # (spécifique à GNU make). *.png: variable2 = Sara # Pour toutes les règles correspondant à *.png, et tous - # leurs descendants, la variable variable2 vaudra - # "Sara". + # leurs descendants, la variable variable2 vaudra + # "Sara". # Si le jeux des dépendances et descendances devient vraiment trop compliqué, # des incohérences peuvent survenir. # Certaines variables sont prédéfinies par make : affiche_predefinies: - echo $(CC) - echo ${CXX} - echo $(FC) - echo ${CFLAGS} - echo $(CPPFLAGS) - echo ${CXXFLAGS} - echo $(LDFLAGS) - echo ${LDLIBS} + echo $(CC) + echo ${CXX} + echo $(FC) + echo ${CFLAGS} + echo $(CPPFLAGS) + echo ${CXXFLAGS} + echo $(LDFLAGS) + echo ${LDLIBS} #----------------------------------------------------------------------- # Variables : le retour @@ -225,9 +225,9 @@ fichiers_source = $(wildcard *.c */*.c) fichiers_objet = $(patsubst %.c,%.o,$(fichiers_source)) ls: * src/* - @echo $(filter %.txt, $^) - @echo $(notdir $^) - @echo $(join $(dir $^),$(notdir $^)) + @echo $(filter %.txt, $^) + @echo $(notdir $^) + @echo $(join $(dir $^),$(notdir $^)) #----------------------------------------------------------------------- # Directives @@ -240,14 +240,14 @@ include meuh.mk sport = tennis report: ifeq ($(sport),tennis) # Il y a aussi ifneq. - @echo 'jeu, set et match' + @echo 'jeu, set et match' else - @echo "C'est pas ici Wimbledon ?" + @echo "C'est pas ici Wimbledon ?" endif truc = true ifdef $(truc) # Il y a aussi ifndef. - machin = 'salut' + machin = 'salut' endif ``` -- cgit v1.2.3 From a3e68ea324716f1f018888782b357812be3865a2 Mon Sep 17 00:00:00 2001 From: Cedric HT Date: Sat, 23 Jan 2016 11:31:17 +0100 Subject: Transleted code variables and strings to french --- fr-fr/wolfram-fr.html.markdown | 116 ++++++++++++++++++++--------------------- 1 file changed, 58 insertions(+), 58 deletions(-) (limited to 'fr-fr') diff --git a/fr-fr/wolfram-fr.html.markdown b/fr-fr/wolfram-fr.html.markdown index b9fe986f..ea07aae5 100644 --- a/fr-fr/wolfram-fr.html.markdown +++ b/fr-fr/wolfram-fr.html.markdown @@ -57,101 +57,101 @@ x (* 20 *) (* Le langage Wolfram effectue des manipulations symboliques, donc utiliser des variables non déclarées n'est pas illégal *) -cow + 5 (* 5 + cow, comme cow n'est pas déclarée, l'évaluation +truc + 5 (* 5 + truc, comme truc n'est pas déclarée, l'évaluation s'arrête là *) -cow + 5 + 10 (* 15 + cow, on évalue ce qu'on peut... *) -% (* 15 + cow, % représente le dernier résultat *) -% - cow (* 15, les variables non déclarées peuvent quand même +truc + 5 + 10 (* 15 + truc, on évalue ce qu'on peut... *) +% (* 15 + truc, % représente le dernier résultat *) +% - truc (* 15, les variables non déclarées peuvent quand même s'annuler *) -moo = cow + 5 (* Attention : moo est ici une expression et non un nombre *) +chose = truc + 5 (* Attention : chose est ici une expression et non un nombre *) (* Déclaration d'une fonction *) -Double[x_] := x * 2 (* Le symbole := empêche l'évaluation immédiate du terme - à droite *) -Double[10] (* 20 *) -Double[Sin[Pi/2]] (* 2 *) -Double @ Sin @ (Pi/2) (* 2, Utiliser @ évite les paquets de crochets - fermants si moches *) -(Pi/2) // Sin // Double(* 2, Utiliser // permet d'écrire les fonctions dans - l'ordre d'appel *) +Double[x_] := x * 2 (* Le symbole := empêche l'évaluation immédiate du terme + à droite *) +Double[10] (* 20 *) +Double[Sin[Pi/2]] (* 2 *) +Double @ Sin @ (Pi/2) (* 2, Utiliser @ évite les paquets de crochets + fermants si moches *) +(Pi/2) // Sin // Double (* 2, Utiliser // permet d'écrire les fonctions dans + l'ordre d'appel *) (* Pour la programmation impérative, utiliser ; pour séparer les expressions *) -MyFirst[] := (Print@"Hello"; Print@"World") (* Les parenthèses sont nécessaires - car ; est prioritaire sur := *) -MyFirst[] (* Hello World *) +Salut[] := (Print@"Hello"; Print@"World") (* Les parenthèses sont nécessaires + car ; est prioritaire sur := *) +Salut[] (* Hello World *) (* Boucles For à la C *) -PrintTo[x_] := For[y=0, y 2, "Red" -> 1|> (* Crée une table associative *) -myHash[["Green"]] (* 2, l'utilise *) -myHash[["Green"]] := 5 (* 5, la modifie *) -myHash[["Puce"]] := 3.5 (* 3.5, l'étend *) -KeyDropFrom[myHash, "Green"] (* Supprime la clé "Green" *) -Keys[myHash] (* {Red} *) -Values[myHash] (* {1} *) +table = <|"Vert" -> 2, "Rouge" -> 1|> (* Crée une table associative *) +table[["Vert"]] (* 2, l'utilise *) +table[["Vert"]] := 5 (* 5, la modifie *) +table[["Bleu"]] := 3.5 (* 3.5, l'étend *) +KeyDropFrom[table, "Vert"] (* Supprime la clé "Vert" *) +Keys[table] (* {Rouge} *) +Values[table] (* {1} *) (* Pour finir, toute bonne démonstration du langage Wolfram contient un Manipulate ! *) -- cgit v1.2.3 From 3ea060e936b4260ab57abfee6de9dabc3232d6fd Mon Sep 17 00:00:00 2001 From: Cedric HT Date: Sat, 23 Jan 2016 11:32:02 +0100 Subject: Corrected code results in comments In subsection on hash tables. --- fr-fr/wolfram-fr.html.markdown | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'fr-fr') diff --git a/fr-fr/wolfram-fr.html.markdown b/fr-fr/wolfram-fr.html.markdown index ea07aae5..9cdbabcc 100644 --- a/fr-fr/wolfram-fr.html.markdown +++ b/fr-fr/wolfram-fr.html.markdown @@ -150,8 +150,8 @@ table[["Vert"]] (* 2, l'utilise *) table[["Vert"]] := 5 (* 5, la modifie *) table[["Bleu"]] := 3.5 (* 3.5, l'étend *) KeyDropFrom[table, "Vert"] (* Supprime la clé "Vert" *) -Keys[table] (* {Rouge} *) -Values[table] (* {1} *) +Keys[table] (* {Rouge, Bleu} *) +Values[table] (* {1, 3.5} *) (* Pour finir, toute bonne démonstration du langage Wolfram contient un Manipulate ! *) -- cgit v1.2.3 From 2b3d1e524d483e647fd6a193d6b17808d67af5ab Mon Sep 17 00:00:00 2001 From: Cedric HT Date: Sat, 23 Jan 2016 11:37:15 +0100 Subject: Some improvments in comments --- fr-fr/wolfram-fr.html.markdown | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) (limited to 'fr-fr') diff --git a/fr-fr/wolfram-fr.html.markdown b/fr-fr/wolfram-fr.html.markdown index 9cdbabcc..7b446259 100644 --- a/fr-fr/wolfram-fr.html.markdown +++ b/fr-fr/wolfram-fr.html.markdown @@ -33,22 +33,21 @@ formatage, car il ne contient aucune information de mise en page. 5+8 (* 13 *) (* Appels de fonction *) -(* Le langage Wolfram est sensible à la casse *) Sin[Pi/2] (* 1 *) - (* Syntaxe alternative pour les appels de fonction à 1 paramètre *) Sin@(Pi/2) (* 1 *) (Pi/2) // Sin (* 1 *) -(* Dans le langage Wolfram, toutes les expressions sont en réalité des appels de - fonction *) +(* Attention : le langage est sensible à la casse ! *) + +(* Toutes les expressions sont en réalité des appels de fonction *) Times[2, 2] (* 4 *) Plus[5, 8] (* 13 *) (* Utiliser une variable pour la première fois la déclare globalement *) x = 5 (* 5 *) x == 5 (* True, l'assignation et le test d'égalité est écrit comme - dans le C *) + en C *) x (* 5 *) x = x + 5 (* 10 *) x (* 10 *) @@ -56,7 +55,7 @@ Set[x, 20] (* TOUT est un appel de fonction, TOUUUUUUUUT *) x (* 20 *) (* Le langage Wolfram effectue des manipulations symboliques, donc utiliser des - variables non déclarées n'est pas illégal *) + variables non déclarées est légal *) truc + 5 (* 5 + truc, comme truc n'est pas déclarée, l'évaluation s'arrête là *) truc + 5 + 10 (* 15 + truc, on évalue ce qu'on peut... *) @@ -75,18 +74,18 @@ Double @ Sin @ (Pi/2) (* 2, Utiliser @ évite les paquets de crochets (Pi/2) // Sin // Double (* 2, Utiliser // permet d'écrire les fonctions dans l'ordre d'appel *) -(* Pour la programmation impérative, utiliser ; pour séparer les expressions *) +(* En programmation impérative, utiliser ; pour séparer les expressions *) Salut[] := (Print@"Hello"; Print@"World") (* Les parenthèses sont nécessaires car ; est prioritaire sur := *) Salut[] (* Hello World *) (* Boucles For à la C *) Compter[x_] := For[y=0, y Date: Fri, 12 Feb 2016 11:42:25 -0800 Subject: brainfuck->bf --- fr-fr/bf-fr.html.markdown | 87 ++++++++++++++++++++++++++++++++++++++++ fr-fr/brainfuck-fr.html.markdown | 87 ---------------------------------------- 2 files changed, 87 insertions(+), 87 deletions(-) create mode 100644 fr-fr/bf-fr.html.markdown delete mode 100644 fr-fr/brainfuck-fr.html.markdown (limited to 'fr-fr') diff --git a/fr-fr/bf-fr.html.markdown b/fr-fr/bf-fr.html.markdown new file mode 100644 index 00000000..0fae6032 --- /dev/null +++ b/fr-fr/bf-fr.html.markdown @@ -0,0 +1,87 @@ +--- +language: bf +filename: learnbrainfuck-fr.bf +contributors: + - ["Prajit Ramachandran", "http://prajitr.github.io/"] + - ["Mathias Bynens", "http://mathiasbynens.be/"] +translators: + - ["Baptiste Fontaine", "http://bfontaine.net"] +lang: fr-fr +--- + +Brainfuck (sans majuscule à part au début d’une phrase) est un langage +Turing-complet extrêmement simple avec seulement 8 commandes. + +``` +Tout caractère en dehors de "><+-.,[]" (en dehors des guillemets) est ignoré. + +Brainfuck est représenté par un tableau de 30 000 cellules initialisées à 0 et +un pointeur de données pointant sur la cellule courante. + +Il y a huit commandes : ++ : Incrémente la valeur de la cellule courante de un. +- : Décrémente la valeur de la cellule courante de un. +> : Déplace le pointeur de données sur la cellule suivante (à droite). +< : Déplace le pointeur de données sur la cellule précédente (à gauche). +. : Affiche la valeur ASCII de la cellule courante (par ex. 65 = 'A'). +, : Lit un caractère et le place dans la cellule courante. +[ : Si la valeur dans la cellule courante vaut 0, saute au ] correspondant. + Sinon, continue avec la commande suivante. +] : Si la valeur dans la cellule courante vaut 0, continue avec la commande + suivante. Sinon, retourne au [ correspondant. + +[ et ] forment une boucle « tant que » (« while »). Ils doivent évidemment +aller par paires. + +Regardons quelques programmes simples en brainfuck. + +++++++ [ > ++++++++++ < - ] > +++++ . + +Ce programme affiche la lettre 'A'. Il commence par incrémenter la première +cellule à 6. Il entre ensuite dans une boucle et se déplace sur la seconde +cellule. Il l’incrémente 10 fois, retourne sur la première cellule, et la +décrémente. Cette boucle est exécutée 6 fois (ce qui correspond aux 6 +décrémentations de la première cellule pour la faire atteindre 0, ce qui fait +sortir de la boucle). + +À ce moment-là, nous sommes sur la première cellule, qui a une valeur de 0, +tandis que la seconde cellule a une valeur de 60. Nous nous déplaçons sur +celle-ci, l’incrémentons 5 fois, pour une valeur de 65, et affichons sa valeur. +En ASCII, 65 correspond à 'A' donc le programme affiche 'A' dans le terminal. + +, [ > + < - ] > . + +Ce programme lit un caractère sur l’entrée standard et le copie dans la +première cellule. Il commence ensuite une boucle : il bouge sur la seconde +cellule, incrémente sa valeur, retourne sur la première et décrémente sa +valeur. Il continue jusqu’à ce que la valeur de la première cellule soit à 0, +et que la seconde cellule contienne l’ancienne valeur de la première. Comme +nous sommes sur la première cellule à la fin de la boucle, il bouge sur la +seconde et affiche sa valeur en ASCII. + +Souvenez-vous que les espaces sont uniquement là pour favoriser la lisibilité, +vous pourriez tout aussi aisément écrire le programme comme ceci : + +,[>+<-]>. + +Essayez et devinez ce que ce programme fait : + +,>,< [ > [ >+ >+ << -] >> [- << + >>] <<< -] >> + +Ce programme prend deux nombres en entrée, et les multiplie. + +Il commence par lire deux entrées, puis commence une boucle externe, qui a une +condition sur la première cellule. Il bouge ensuite sur la seconde, et commence +une boucle interne sur celle-ci, en incrémentant la troisième cellule. Il y a +cependant un problème : à la fin de la boucle interne, la valeur de la seconde +cellule est à zéro. Dans ce cas, la boucle interne ne fonctionnera pas une +seconde fois. Pour régler le problème, nous incrémentons aussi la quatrième +cellule, puis recopions sa valeur dans la seconde cellule. +À la fin, la troisième cellule contient le résultat de la multiplication. +``` + +Et voilà ce qu’est le brainfuck. Pas très dur, hein ? Pour le fun, vous pouvez +écrire vos propres programmes en brainfuck, ou écrire un interpréteur brainfuck +dans un autre langage. L’interpréteur est relativement simple à implémenter, +mais si vous êtes un masochiste, essayez d’écrire un interpréteur brainfuck en… +brainfuck. diff --git a/fr-fr/brainfuck-fr.html.markdown b/fr-fr/brainfuck-fr.html.markdown deleted file mode 100644 index 545e407e..00000000 --- a/fr-fr/brainfuck-fr.html.markdown +++ /dev/null @@ -1,87 +0,0 @@ ---- -language: brainfuck -filename: learnbrainfuck-fr.bf -contributors: - - ["Prajit Ramachandran", "http://prajitr.github.io/"] - - ["Mathias Bynens", "http://mathiasbynens.be/"] -translators: - - ["Baptiste Fontaine", "http://bfontaine.net"] -lang: fr-fr ---- - -Brainfuck (sans majuscule à part au début d’une phrase) est un langage -Turing-complet extrêmement simple avec seulement 8 commandes. - -``` -Tout caractère en dehors de "><+-.,[]" (en dehors des guillemets) est ignoré. - -Brainfuck est représenté par un tableau de 30 000 cellules initialisées à 0 et -un pointeur de données pointant sur la cellule courante. - -Il y a huit commandes : -+ : Incrémente la valeur de la cellule courante de un. -- : Décrémente la valeur de la cellule courante de un. -> : Déplace le pointeur de données sur la cellule suivante (à droite). -< : Déplace le pointeur de données sur la cellule précédente (à gauche). -. : Affiche la valeur ASCII de la cellule courante (par ex. 65 = 'A'). -, : Lit un caractère et le place dans la cellule courante. -[ : Si la valeur dans la cellule courante vaut 0, saute au ] correspondant. - Sinon, continue avec la commande suivante. -] : Si la valeur dans la cellule courante vaut 0, continue avec la commande - suivante. Sinon, retourne au [ correspondant. - -[ et ] forment une boucle « tant que » (« while »). Ils doivent évidemment -aller par paires. - -Regardons quelques programmes simples en brainfuck. - -++++++ [ > ++++++++++ < - ] > +++++ . - -Ce programme affiche la lettre 'A'. Il commence par incrémenter la première -cellule à 6. Il entre ensuite dans une boucle et se déplace sur la seconde -cellule. Il l’incrémente 10 fois, retourne sur la première cellule, et la -décrémente. Cette boucle est exécutée 6 fois (ce qui correspond aux 6 -décrémentations de la première cellule pour la faire atteindre 0, ce qui fait -sortir de la boucle). - -À ce moment-là, nous sommes sur la première cellule, qui a une valeur de 0, -tandis que la seconde cellule a une valeur de 60. Nous nous déplaçons sur -celle-ci, l’incrémentons 5 fois, pour une valeur de 65, et affichons sa valeur. -En ASCII, 65 correspond à 'A' donc le programme affiche 'A' dans le terminal. - -, [ > + < - ] > . - -Ce programme lit un caractère sur l’entrée standard et le copie dans la -première cellule. Il commence ensuite une boucle : il bouge sur la seconde -cellule, incrémente sa valeur, retourne sur la première et décrémente sa -valeur. Il continue jusqu’à ce que la valeur de la première cellule soit à 0, -et que la seconde cellule contienne l’ancienne valeur de la première. Comme -nous sommes sur la première cellule à la fin de la boucle, il bouge sur la -seconde et affiche sa valeur en ASCII. - -Souvenez-vous que les espaces sont uniquement là pour favoriser la lisibilité, -vous pourriez tout aussi aisément écrire le programme comme ceci : - -,[>+<-]>. - -Essayez et devinez ce que ce programme fait : - -,>,< [ > [ >+ >+ << -] >> [- << + >>] <<< -] >> - -Ce programme prend deux nombres en entrée, et les multiplie. - -Il commence par lire deux entrées, puis commence une boucle externe, qui a une -condition sur la première cellule. Il bouge ensuite sur la seconde, et commence -une boucle interne sur celle-ci, en incrémentant la troisième cellule. Il y a -cependant un problème : à la fin de la boucle interne, la valeur de la seconde -cellule est à zéro. Dans ce cas, la boucle interne ne fonctionnera pas une -seconde fois. Pour régler le problème, nous incrémentons aussi la quatrième -cellule, puis recopions sa valeur dans la seconde cellule. -À la fin, la troisième cellule contient le résultat de la multiplication. -``` - -Et voilà ce qu’est le brainfuck. Pas très dur, hein ? Pour le fun, vous pouvez -écrire vos propres programmes en brainfuck, ou écrire un interpréteur brainfuck -dans un autre langage. L’interpréteur est relativement simple à implémenter, -mais si vous êtes un masochiste, essayez d’écrire un interpréteur brainfuck en… -brainfuck. -- cgit v1.2.3 From f3b10beb01795bf7513ec8d06c9e90ab98df7a83 Mon Sep 17 00:00:00 2001 From: Adam Date: Fri, 12 Feb 2016 23:04:31 -0800 Subject: Clean up various errors --- fr-fr/HTML-fr.html.markdown | 3 ++- fr-fr/d.html.markdown | 12 ++++++------ fr-fr/make-fr.html.markdown | 4 ++-- fr-fr/objective-c-fr.html.markdown | 3 +-- 4 files changed, 11 insertions(+), 11 deletions(-) (limited to 'fr-fr') diff --git a/fr-fr/HTML-fr.html.markdown b/fr-fr/HTML-fr.html.markdown index fdde9107..4d2da921 100644 --- a/fr-fr/HTML-fr.html.markdown +++ b/fr-fr/HTML-fr.html.markdown @@ -5,6 +5,7 @@ contributors: - ["Christophe THOMAS", "https://github.com/WinChris"] lang: fr-fr --- + HTML signifie HyperText Markup Language. C'est un langage (format de fichiers) qui permet d'écrire des pages internet. C’est un langage de balisage, il nous permet d'écrire des pages HTML au moyen de balises (Markup, en anglais). @@ -17,7 +18,7 @@ Comme tous les autres langages, HTML a plusieurs versions. Ici, nous allons parl Cet article porte principalement sur la syntaxe et quelques astuces. -```HTML +```html diff --git a/fr-fr/d.html.markdown b/fr-fr/d.html.markdown index d9bd9b48..bfb9f2ce 100644 --- a/fr-fr/d.html.markdown +++ b/fr-fr/d.html.markdown @@ -8,7 +8,7 @@ translators: lang: fr-fr --- -```d +```c // Commençons par un classique module hello; @@ -30,7 +30,7 @@ D est activement développé par de nombreuses personnes très intelligents, gui [Andrei Alexandrescu](https://fr.wikipedia.org/wiki/Andrei_Alexandrescu). Après cette petite introduction, jetons un coup d'oeil à quelques exemples. -```d +```c import std.stdio; void main() { @@ -75,7 +75,7 @@ On peut définir de nouveaux types avec les mots-clés `struct`, `class`, `union` et `enum`. Ces types sont passés au fonction par valeur (ils sont copiés) De plus, on peut utiliser les templates pour rendre toutes ces abstractions génériques. -```d +```c // Ici, 'T' est un paramètre de type. Il est similaire au de C++/C#/Java. struct LinkedList(T) { T data = null; @@ -140,7 +140,7 @@ une méthode qui peut se comporter comme une lvalue. On peut donc utiliser la syntaxe des structures classiques (`struct.x = 7`) comme si il s'agissait de méthodes getter ou setter. -```d +```c // Considérons une classe paramétrée avec les types 'T' et 'U' class MyClass(T, U) { T _data; @@ -212,7 +212,7 @@ de premier ordre, les fonctions `pure` et les données immuables. De plus, tout vos algorithmes fonctionelles favoris (map, reduce, filter) sont disponibles dans le module `std.algorithm`. -```d +```c import std.algorithm : map, filter, reduce; import std.range : iota; // construit un intervalle excluant la dernière valeur. @@ -242,7 +242,7 @@ est de type A, comme si c'était une méthode de A. J'aime le parallélisme. Vous aimez les parallélisme ? Bien sur que vous aimez ça Voyons comment on le fait en D ! -```d +```c import std.stdio; import std.parallelism : parallel; import std.math : sqrt; diff --git a/fr-fr/make-fr.html.markdown b/fr-fr/make-fr.html.markdown index 5a1e03e7..48d24549 100644 --- a/fr-fr/make-fr.html.markdown +++ b/fr-fr/make-fr.html.markdown @@ -1,9 +1,9 @@ --- language: make contributors: - - ["Robert Steed", "https://github.com/robochat"] + - ["Robert Steed", "https://github.com/robochat"] translators: - - ["altaris", "https://github.com/altaris"] + - ["altaris", "https://github.com/altaris"] filename: Makefile-fr lang: fr-fr --- diff --git a/fr-fr/objective-c-fr.html.markdown b/fr-fr/objective-c-fr.html.markdown index 4e31c4bf..fbe1741e 100644 --- a/fr-fr/objective-c-fr.html.markdown +++ b/fr-fr/objective-c-fr.html.markdown @@ -1,5 +1,4 @@ --- - language: Objective-C contributors: - ["Eugene Yagrushkin", "www.about.me/yagrushkin"] @@ -9,7 +8,6 @@ translators: - ["Yannick Loriot", "https://github.com/YannickL"] filename: LearnObjectiveC-fr.m lang: fr-fr - --- L'Objective-C est un langage de programmation orienté objet réflexif principalement utilisé par Apple pour les systèmes d'exploitations Mac OS X et iOS et leurs frameworks respectifs, Cocoa et Cocoa Touch. @@ -519,6 +517,7 @@ __unsafe_unretained NSArray *unsafeArray; // Comme __weak, mais la variable n'es // l'objet est supprimé ``` + ## Lectures Complémentaires [La Page Wikipedia de l'Objective-C](http://fr.wikipedia.org/wiki/Objective-C) -- cgit v1.2.3 From 484300f1db4509b08ed48526c61fcfcb48a6152b Mon Sep 17 00:00:00 2001 From: Zach Latta Date: Tue, 23 Feb 2016 16:12:44 -0800 Subject: Fix capitalization of GitHub --- fr-fr/markdown.html.markdown | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'fr-fr') diff --git a/fr-fr/markdown.html.markdown b/fr-fr/markdown.html.markdown index 66f0efbe..2e4e8461 100644 --- a/fr-fr/markdown.html.markdown +++ b/fr-fr/markdown.html.markdown @@ -62,8 +62,8 @@ __Celui-là aussi.__ **_Pareil ici_** *__Et là!__* - + ~~Ce texte est barré avec strikethrough.~~ @@ -172,7 +172,7 @@ fonctionne aussi à l'intérieur du bloc de code --> La fonction `run()` ne vous oblige pas à aller courir! - \`\`\`ruby @@ -183,7 +183,7 @@ puts "Hello world!" end \`\`\` -<-- Pas besoin d'indentation pour le code juste au dessus, de plus, Github +<-- Pas besoin d'indentation pour le code juste au dessus, de plus, GitHub va utiliser une coloration syntaxique pour le langage indiqué après les ``` --> @@ -264,7 +264,7 @@ Pour taper *ce texte* entouré d'astérisques mais pas en italique : Tapez \*ce texte\*. - -- cgit v1.2.3