summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormarcellus <msimon_fr@hotmail.com>2025-06-21 16:30:52 +0200
committermarcellus <msimon_fr@hotmail.com>2025-06-21 16:30:52 +0200
commit85f27b860ed78cbe3ebedb5b5540962461393266 (patch)
tree9358deda2a6d1dabd49436b9003574fbb6eb8925
parentc0798f948cd2d317880545641f1c1a9e7defaab5 (diff)
update: Saturday 6 June, 16:30:52 from IUseArchBTW
-rw-r--r--TYLA/Dates et noms.md14
-rw-r--r--TYLA/Subprograms.md21
2 files changed, 34 insertions, 1 deletions
diff --git a/TYLA/Dates et noms.md b/TYLA/Dates et noms.md
new file mode 100644
index 0000000..05abfea
--- /dev/null
+++ b/TYLA/Dates et noms.md
@@ -0,0 +1,14 @@
+# Dates
+- **FORTRAN** -> 1956
+- **ALGOL** -> 1958
+- **COBOL** -> 1959
+- **Prolog, C** -> 1972
+- **Ada** -> 1983
+- **Python** -> 1991
+- **Go** -> 2009
+# Noms
+Alan Kay -> SmallTalk
+Backus -> FORTRAN (1er compilateur optimisant)
+Wirth -> Pascal
+McCarthy -> Lisp
+Liskov -> CLU 1975 \ No newline at end of file
diff --git a/TYLA/Subprograms.md b/TYLA/Subprograms.md
index 4790ecd..a36d26d 100644
--- a/TYLA/Subprograms.md
+++ b/TYLA/Subprograms.md
@@ -26,4 +26,23 @@ Passage d'une partie des arguments au sous-programme pour renvoyer une fonction
# Curryfication
Traduction d'une fonction à plusieurs arguments en plusieurs fonction d'un seul argument
# Arguments nommés et par défaut
-Permettent de spécifier certains arguments et d'avoir une valeur par défaut pour les autres \ No newline at end of file
+Permettent de spécifier certains arguments et d'avoir une valeur par défaut pour les autres
+
+# Passage d'arguments
+## Call by value
+- Arguments passés en copie -> pas d'effets de bord
+- Evalués avant l'appel
+## Call by reference
+- Pointeurs passés vers la valeur -> modification de la donnée
+- Attention si 2x le même pointeur
+## Call by value-result
+Ada `in out`
+- Arguments évalués à l'appel de la fonction et passés en copie
+- Arguments recopiés à la fin de la fonction (modifiés ou pas)
+ALGOL-W :
+- Arguments évalués et copiés à l'appel
+- Arguments ré-évalués au retour pour la recopie
+## Call by name
+Arguments évalués à chaque utilisation
+## Call by need
+-> Lazy initialization \ No newline at end of file