This commit is contained in:
Oscar Plaisant
2024-03-29 13:56:47 +01:00
parent 2aba86b4e7
commit 448a67cf76
35 changed files with 242 additions and 46 deletions

View File

@@ -10,7 +10,7 @@ up:: [[programmation]]
> En programmation, une [[programmation.fonction|fonction]] est dite à effet de bord si elle modifie un [[programmation.état|état]] en dehors de son environnement local.
^definition
> [!cite] [Wikiwand - Effet de bord (informatique)](zotero://select/groups/5383243/items/92J8KRBY) - [Page ](zotero://open-pdf/groups/5383243/items/JD72IJY2?annotation=YVVTF3QP)
> [!cite]- [Wikiwand - Effet de bord (informatique)](zotero://select/groups/5383243/items/92J8KRBY) - [Page ](zotero://open-pdf/groups/5383243/items/JD72IJY2?annotation=YVVTF3QP)
> En informatique, une fonction est dite à effet de bord (traduction mot à mot de l'anglais side effect, dont le sens est plus proche d'effet secondaire) si elle modifie un état en dehors de son environnement local, c'est-à-dire a une interaction observable avec le monde extérieur autre que retourner une valeur.
>
> > [!note] Notes
@@ -25,9 +25,9 @@ up:: [[programmation]]
> - la modification d'une [[programmation.variable statique|variable statique]] locale
> - le fait d'appeler une autre fonction à effet de bord
> [!cite]- [Wikiwand - Effet de bord (informatique)](zotero://select/groups/5383243/items/92J8KRBY) - [Page ](zotero://open-pdf/groups/5383243/items/JD72IJY2?annotation=ETUCEAGE)
> Par exemple, les fonctions qui modifient une variable locale statique, une variable non locale ou un argument mutable passé par référence, les fonctions qui effectuent des opérations d'entrées-sorties ou les fonctions appelant d'autres fonctions à effet de bord[1].
> ^ETUCEAGEaJD72IJY2g5383243
> [!cite]- [Effet de bord (informatique)](zotero://select/groups/5383243/items/HK8W8STH) - [Page ](zotero://open-pdf/groups/5383243/items/FHGCUVX5?annotation=FRXYERKZ)
> Par exemple, les fonctions qui modifient une variable locale statique, une variable non locale ou un argument mutable passé par référence, les fonctions qui effectuent des opérations d'entrées-sorties ou les fonctions appelant d'autres fonctions à effet de bord[
> ^FRXYERKZaFHGCUVX5g5383243
# Problèmes des effets de bord
@@ -39,10 +39,9 @@ Les effets de bord posent problème pour :
Le langage [[haskell]] restreint les effets de bord dans le concept de [[monade]].
> [!cite] [Wikiwand - Effet de bord (informatique)](zotero://select/groups/5383243/items/92J8KRBY) - [Page ](zotero://open-pdf/groups/5383243/items/JD72IJY2?annotation=U8EXFJVJ)
> [!cite]- [Effet de bord (informatique)](zotero://select/groups/5383243/items/HK8W8STH) - [Page ](zotero://open-pdf/groups/5383243/items/FHGCUVX5?annotation=LAQR2DNM)
> La programmation fonctionnelle cherche au contraire à les minimiser et les isole souvent pour cela dans des structures prévues entre autres pour cela : les monades.
>
> > [!note] Notes
> > La programmation fonctionnelle est une solution aux problèmes des effets de bord.
> ^U8EXFJVJaJD72IJY2g5383243
> ^LAQR2DNMaFHGCUVX5g5383243