This commit is contained in:
Oscar Plaisant 2024-03-31 21:10:34 +02:00
parent b29f59b672
commit 7b591755d8
24 changed files with 156 additions and 20 deletions

View File

@ -1,7 +1,7 @@
{
"theme": "system",
"cssTheme": "Minimal",
"baseFontSize": 18,
"baseFontSize": 20.5,
"enabledCssSnippets": [
"pdf_darkmode",
"query_header_title",

View File

@ -8,7 +8,7 @@
"lineWidth": 40,
"lineWidthWide": 5000,
"maxWidth": 98,
"textNormal": 18,
"textNormal": 20.5,
"textSmall": 13,
"imgGrid": false,
"imgWidth": "img-default-width",

View File

@ -43,7 +43,7 @@
"singlelineCardSeparator": "::",
"singlelineReversedCardSeparator": ":::"
},
"buryDate": "2024-03-29",
"buryDate": "2024-03-30",
"buryList": [],
"historyDeck": ""
}

View File

@ -1 +1 @@
{"matrice hessienne":{"matrice hessienne":{"internalLink":{"count":2,"lastUpdated":1710324879177}}},"manim Ellipse":{"manim Ellipse":{"internalLink":{"count":1,"lastUpdated":1709296590359}}},"baptême":{"baptême":{"internalLink":{"count":5,"lastUpdated":1709864270370}}},"gradient":{"gradient":{"internalLink":{"count":1,"lastUpdated":1710325461961}}},"obsidian plugin tag and wordcloud":{"obsidian plugin tag and wordcloud":{"internalLink":{"count":1,"lastUpdated":1710345237714}}},"intersection de sous groupes":{"intersection de sous groupes":{"internalLink":{"count":1,"lastUpdated":1710465530327}}},"valeurs":{"valeurs":{"internalLink":{"count":1,"lastUpdated":1711459246780}}},"Learning APL":{"Learning APL":{"internalLink":{"count":1,"lastUpdated":1711584419388}}},"structure de donnés":{"structure de donnés":{"internalLink":{"count":1,"lastUpdated":1711621251914}}},"paramètre":{"paramètre":{"internalLink":{"count":1,"lastUpdated":1711621492446}}},"langage de programmation":{"langage de programmation":{"internalLink":{"count":1,"lastUpdated":1711621841863}}},"argument d'une fonction":{"argument d'une fonction":{"internalLink":{"count":1,"lastUpdated":1711624010397}}},"argument":{"argument":{"internalLink":{"count":2,"lastUpdated":1711624133731}}},"techniques de pkm":{"techniques de pkm":{"internalLink":{"count":1,"lastUpdated":1711627281333}}},"paradigme de programmation":{"paradigme de programmation":{"internalLink":{"count":5,"lastUpdated":1711667940041}}},"état":{"état":{"internalLink":{"count":1,"lastUpdated":1711628232311}}},"structure de données":{"structure de données":{"internalLink":{"count":1,"lastUpdated":1711643699590}}},"structures de données":{"structures de données":{"internalLink":{"count":1,"lastUpdated":1711644884793}}},"enregistrement":{"enregistrement":{"internalLink":{"count":1,"lastUpdated":1711668283936}}},"envoi de messages entre objets":{"envoi de messages entre objets":{"internalLink":{"count":1,"lastUpdated":1711742931869}}},"programmation structurée":{"programmation structurée":{"internalLink":{"count":1,"lastUpdated":1711764089506}}}}
{"matrice hessienne":{"matrice hessienne":{"internalLink":{"count":2,"lastUpdated":1710324879177}}},"manim Ellipse":{"manim Ellipse":{"internalLink":{"count":1,"lastUpdated":1709296590359}}},"baptême":{"baptême":{"internalLink":{"count":5,"lastUpdated":1709864270370}}},"gradient":{"gradient":{"internalLink":{"count":1,"lastUpdated":1710325461961}}},"obsidian plugin tag and wordcloud":{"obsidian plugin tag and wordcloud":{"internalLink":{"count":1,"lastUpdated":1710345237714}}},"intersection de sous groupes":{"intersection de sous groupes":{"internalLink":{"count":1,"lastUpdated":1710465530327}}},"valeurs":{"valeurs":{"internalLink":{"count":1,"lastUpdated":1711459246780}}},"Learning APL":{"Learning APL":{"internalLink":{"count":1,"lastUpdated":1711584419388}}},"structure de donnés":{"structure de donnés":{"internalLink":{"count":1,"lastUpdated":1711621251914}}},"paramètre":{"paramètre":{"internalLink":{"count":1,"lastUpdated":1711621492446}}},"langage de programmation":{"langage de programmation":{"internalLink":{"count":1,"lastUpdated":1711621841863}}},"argument d'une fonction":{"argument d'une fonction":{"internalLink":{"count":1,"lastUpdated":1711624010397}}},"argument":{"argument":{"internalLink":{"count":2,"lastUpdated":1711624133731}}},"techniques de pkm":{"techniques de pkm":{"internalLink":{"count":1,"lastUpdated":1711627281333}}},"paradigme de programmation":{"paradigme de programmation":{"internalLink":{"count":5,"lastUpdated":1711667940041}}},"état":{"état":{"internalLink":{"count":3,"lastUpdated":1711905774038}}},"structure de données":{"structure de données":{"internalLink":{"count":1,"lastUpdated":1711643699590}}},"structures de données":{"structures de données":{"internalLink":{"count":2,"lastUpdated":1711904665130}}},"enregistrement":{"enregistrement":{"internalLink":{"count":1,"lastUpdated":1711668283936}}},"envoi de messages entre objets":{"envoi de messages entre objets":{"internalLink":{"count":1,"lastUpdated":1711742931869}}},"programmation structurée":{"programmation structurée":{"internalLink":{"count":1,"lastUpdated":1711764089506}}},"effet de bord":{"effet de bord":{"internalLink":{"count":2,"lastUpdated":1711906516742}}},"programmation impérative":{"programmation impérative":{"internalLink":{"count":2,"lastUpdated":1711904255737}}},"composition de fonctions":{"composition de fonctions":{"internalLink":{"count":1,"lastUpdated":1711904385231}}},"fonction":{"fonction":{"internalLink":{"count":2,"lastUpdated":1711904857369}}}}

View File

@ -4,7 +4,7 @@
"showCitekeyInSuggester": true,
"literatureNoteFolder": "sources/zotero",
"enableServer": true,
"serverPort": 9091,
"serverPort": 9092,
"serverHostname": "127.0.0.1",
"template": {
"folder": "templates/zotero",

0
.trash/Untitled 2 5.md Normal file
View File

View File

@ -1,11 +1,9 @@
---
alias: ["combinateur", "combinateurs"]
aliases: []
---
up::[[APL]]
up::[[APL]], [[combinateur]]
#informatique
---
# Beside ∘
**Beside**, **Compose**, **After**
Composition de fonctions

12
Frédéric Lordon.md Normal file
View File

@ -0,0 +1,12 @@
title::
link::
#personne
```dataview
TABLE title, description, elink(link) as "link"
FROM ""
WHERE contains(author, this.file.link)
```

6
combinateur.md Normal file
View File

@ -0,0 +1,6 @@
up:: [[programmation]]
#informatique #maths/algèbre
> [!definition] combinateur
>
^definition

View File

@ -2,8 +2,6 @@ up:: [[compétence]], [[qualification]]
source:: [[conférence gesticulée.Inculture]]
#apprendre #politique
---
> La qualification permet de définir un poste de travail en termes de missions, tandis que la compétence permet de définir la capacité d'un salarié à s'adapter à une situation professionnelle.
[Maxicours](https://www.maxicours.com/se/cours/les-conditions-de-travail-les-qualifications-et-les-competences/#:~:text=La%20qualification%20permet%20de%20d%C3%A9finir,adapter%20%C3%A0%20une%20situation%20professionnelle)
@ -12,12 +10,12 @@ source:: [[conférence gesticulée.Inculture]]
- "concret"
- s'inscrit dans un [[importance des corps de métier|corps de métier]]
- [[compétence]] : **savoir-être**
- capacité à "obéir aux ordres" de la hiérarchie
- capacité à "obéir aux ordres" de la hiérarchie (toujours dans un contexte de hiérarchie)
- est plus individuel
L'utilisation de **compétences** plutôt que de qualifications permet
- de [[poser des questions sur ce qu'on a pas appris]]
- on ne juge plus sur les qualifications, mais sur des compétences, commen la capacité à s'adapter à l'imprévu etc.
- on ne juge plus sur les qualifications, mais sur des compétences, comme la capacité à s'adapter à l'imprévu etc.
- de diviser : chacun a sa propre compétence
- contrairement aux [[qualification|qualifications]], qui peuvent être des [[qualification#^00d369|qualification collectives]], les compétences sont uniquement individuelles
- pas de [[importance des corps de métier|corps de métier]], donc pas de [[syndicalisme]] ou de [[militantisme]]

View File

@ -0,0 +1,11 @@
up:: [[enseigner la programmation]]
#informatique #apprendre
Les modèles se retrouvent partout dans l'enseignement.
> [!cite]+ [Form and Content in Computer Science (1970 ACM turing lecture)](zotero://select/groups/5383243/items/FJG2FWGG) - [Page 9](zotero://open-pdf/groups/5383243/items/H39XI9D9?page=9&annotation=CCMAKXHC)
> - To help people learn is to help them build, in their heads, various kinds of computational models.
> - This can best be done by a teacher who has, in his head, a reasonable model of what is in the pupil's head.
> - For the same reason the student, when debugging his own models and procedures, should have a model of what he is doing, and must know good debugging techniques, such as how to formulate simple but critical test cases.
> - It will help the student to know something about computational models and programming. The idea of debugging itself, for example, is a very powerful concept - in contrast to the helplessness promoted by our cultural heritage about gifts, talents, and aptitudes. The latter encourages "I'm not good at this" instead of "How can I make myself better at it?"
> ^CCMAKXHCaH39XI9D9g5383243p9

View File

@ -0,0 +1,2 @@
up:: [[programmation]]
#informatique

27
fermeture.md Normal file
View File

@ -0,0 +1,27 @@
up:: [[programmation.fonction|fonction]]
#informatique
> [!definition] fermeture
> En programmation, la fermeture, ou clôture (de l'anglais *closure*) est une fonction accompagnée de son environnement lexical (les variables en dehors de son environnement local qu'elle a pourtant capturé).
> Cela permet notamment d'utiliser un contexte d'exécution
^definition
> [!cite]+ [Programming Paradigms for Dummies: What Every Programmer Should Know](zotero://select/groups/5383243/items/673TMQRT) - [Page 24](zotero://open-pdf/groups/5383243/items/P4L4LCJZ?page=16&annotation=BRVCUS8M)
> From an implementation viewpoint, a closure combines a procedure with its external references (the references it uses at its definition).
>
> > [!note] Notes
> > fermeture = combiner une fonction avec ses références externes
> ^BRVCUS8MaP4L4LCJZg5383243p16
> [!cite]+ [Programming Paradigms for Dummies: What Every Programmer Should Know](zotero://select/groups/5383243/items/673TMQRT) - [Page 24](zotero://open-pdf/groups/5383243/items/P4L4LCJZ?page=16&annotation=6H6T7X9L)
> From the programmers viewpoint, a closure is a “packet of work”: a program can transform any instructions into a closure at one point in the program, pass it to another point, and decide to execute it at that point. The result of its execution is the same as if the instructions were executed at the point the closure was created.
>
> > [!note] Notes
> > fermeture := permet que le résultat soit le même que si les instructions étaient éxécutées à l'endroit où la fermeture à été créée.
> ^6H6T7X9LaP4L4LCJZg5383243p16
> [!cite]+ [Fermeture (informatique)](zotero://select/groups/5383243/items/ZKL3R2ZE) - [Page ](zotero://open-pdf/groups/5383243/items/JNZ49HIA?annotation=P8UFCIK5)
> Dans un langage de programmation, une fermeture ou clôture (en anglais : closure) est une fonction accompagnée de son environnement lexical. L'environnement lexical d'une fonction est l'ensemble des variables non locales qu'elle a capturées, soit par valeur (c'est-à-dire par copie des valeurs des variables), soit par référence (c'est-à-dire par copie des adresses mémoires des variables)[1]. Une fermeture est donc créée, entre autres, lorsqu'une fonction est définie dans le corps d'une autre fonction et utilise des paramètres ou des variables locales de cette dernière.
> ^P8UFCIK5aJNZ49HIAg5383243

View File

@ -0,0 +1,22 @@
---
aliases: []
---
up:: [[programmation.fonction|fonction]]
sibling:: [[fonction de première classe]]
> [!definition] fonction d'ordre supérieur
> Une [[programmation.fonction|fonction]] qui possède au moins une des propriétés suivantes :
> - elle prend une ou plusieurs [[programmation.fonction|fonctions]] en entrée
> - elle renvoie une [[programmation.fonction|fonction]]
^definition
> [!cite]- [Fonction d'ordre supérieur](zotero://select/groups/5383243/items/NPLAN6RU) - [Page ](zotero://open-pdf/groups/5383243/items/94RE4PDX?annotation=YZKT9G5G)
> En mathématiques et en informatique, les fonctions d'ordre supérieur sont des fonctions qui ont au moins une des propriétés suivantes :
>
> elles prennent une ou plusieurs fonctions en entrée ;
> elles renvoient une fonction.
> ^YZKT9G5Ga94RE4PDXg5383243
> [!info] Autres noms
> En mathématiques, les fonctions d'ordre supérieur sont aussi appelées [[opérateur|opérateurs]] ou [[fonctionnelle|fonctionnelles]]

View File

@ -3,5 +3,8 @@ up:: [[citoyen de première classe]]
> [!definition] fonction de première classe
> Une fonction de première classe est une [[programmation.fonction|fonction]] qui est traîtée comme un [[citoyen de première classe]].
> Cela implique qu'elle peut être
> Cela implique qu'elle peut être traîtée comme n'importe quelle autre valeur du langage, par exemple :
> - être exprimée anonymenent
> - être affectée à des variables, être mises dans des [[structure de données|structures de données]]
> - être passée en paramètres à une autre [[fonction]] (voir [[fonction d'ordre supérieur]])
^definition

View File

@ -2,13 +2,13 @@ up:: [[programmation.fonction|fonction]]
#informatique
> [!definition] fonction pure
> Une fonction pure est une fonction **sans [[programmation.effet de bord|effets de bord]]**, c'est-à-dire qu'elle ne peut pas modifier (durablement) l'état du système.
> En particulier :
> - Elle ne peut pas modifier autre chose que son champ local (qui doit mourir en même temps que la dite fonction)
> - Elle ne peut pas [[programmation.modification des paramètres]]
> Une fonction pure est une fonction :
> - déterministe (les mêmes entrée donnent toujours les mêmes valeurs)
> - sans [[programmation.effet de bord|effet de bord]]
^definition
> [!cite]- [What Is Functional Programming?](zotero://select/groups/5383243/items/TLUTFXJ8) - [Page ](zotero://open-pdf/groups/5383243/items/8P4TX53J?annotation=S979DXY2)
> A function is called 'pure' if all its inputs are declared as
> inputs - none of them are hidden - and likewise all its outputs are

View File

@ -0,0 +1 @@
/Users/oscarplaisant/Zotero/cache/groups/5383243/3TVGD5RH.png

View File

@ -0,0 +1 @@
/Users/oscarplaisant/Zotero/cache/groups/5383243/58PSUPND.png

View File

@ -0,0 +1 @@
/Users/oscarplaisant/Zotero/cache/groups/5383243/WSXGN3RM.png

View File

@ -3,6 +3,7 @@ aliases:
- salariat comme unique moyen d'accès à l'argent
---
up:: [[capitalisme]], [[salaire]]
author:: [[Frédéric Lordon]]
#politique
> La grande force du capitalisme, c'est d'avoir imposé le salariat comme quasi-unique solution d'accès à l'argent.

View File

@ -6,7 +6,13 @@ up:: [[paradigme de programmation|paradigme]]
#informatique
> [!definition] programmation fonctionnelle
>
> La programmation fonctionnelle est un paradigme de programmation dans lequel :
> - les programmes sont exprimés comme des arbres d'expressions
> - le contrôle de flot est fait en combinant des fonctions plutôt qu'en assignant des valeurs
> - utiliser des [[fonction d'ordre supérieur]]
> - ne pas utiliser d'[[programmation.état|état]]
> - ne pas utiliser d'entrée/sortie cachée (en sortant du champ local)
> -
^definition
# Définitions
@ -22,3 +28,30 @@ up:: [[paradigme de programmation|paradigme]]
> outputs.
> ^IU2KWY7La8P4TX53Jg5383243
> [!cite]+ [Why Functional Programming Matters](zotero://select/groups/5383243/items/6RZUZSFR) - [Page 1](zotero://open-pdf/groups/5383243/items/H9SGRTMQ?page=1&annotation=WSXGN3RM)
> ![[images/zotero/5383243WSXGN3RM.png|500]]
>
> > [!note] Notes
> > programme écrit comme des fonctions qui reçoivent l'entrée en argument et renvoie le résultat.
> ^WSXGN3RMaH9SGRTMQg5383243p1
# Avantages
La programmation fonctionnelle permet :
- d'éviter les [[programmation.effet de bord|effets de bord]], puisqu'ils sont intertits / impossibles.
- une fonction n'a aucun autre effet que de calculer son résultat
- ordre d'éxécution indifférent
- aucun [[programmation.effet de bord|effet de bord]] ne peut changer la valeur d'une expression, elle peut être évaluée n'importe quand
- permet de ne pas s'occuper du contrôle de flot
- permet de remplacer une expression par sa valeur sans changer le résultat
- d'être plus proche du formalisme mathématique
- les fonctions en programmation sont proches des fonctions en programmation fonctionnelle
- cela permet de mieux appliquer les théories mathématiques
> [!cite]+ [Why Functional Programming Matters](zotero://select/groups/5383243/items/6RZUZSFR) - [Page 1](zotero://open-pdf/groups/5383243/items/H9SGRTMQ?page=1&annotation=58PSUPND)
> ![[images/zotero/538324358PSUPND.png|500]]
> ^58PSUPNDaH9SGRTMQg5383243p1

View File

@ -6,6 +6,13 @@ up:: [[paradigme de programmation]]
#informatique
> [!definition] programmation structurée
> La programmation structurée est un type de [[paradigme programmation impérative|programmation impérative]] dans lequel :
> - il n'existe pas d'instruction `goto`
> - les blocks d'un programme n'ont pas d'entrées ou de sorties multiples
> - cela restreint les types d'instructions (notamment les instructions de contrôle de flot)
^definition
> [!definition] programmation structurée - Définition comme méthode
> La programmation structurée est un paradigme de programmation qui consiste en une méthode pour résoudre des problèmes.
> étant donné un problème, on utilise deux étapes pour le résoudre :
> 1. raffinement progressif
@ -16,7 +23,18 @@ up:: [[paradigme de programmation]]
> - *bottom-top*
> - Implémenter les sous-problèmes, des plus concrets aux plus abstraits
> - encapsuler tous les détails d'implémentation : **cacher les détails**
^definition
^definition-methode
> [!definition] programmation structurée - Définition par rapport aux conséquences
> Un programme structuré, en opposition à un programme non-strucutré, est designé de façon **modulaire**.
> La modularité améliore la productivité
> - des petits modules peuvent être codés rapidement et façilement
> - des modules généraux peuvent être réutilisés
> - les modules peuvent être testés indépendamment (réduit le temps de débuggage)
>
> > [!cite]+ [Why Functional Programming Matters](zotero://select/groups/5383243/items/6RZUZSFR) - [Page 2](zotero://open-pdf/groups/5383243/items/H9SGRTMQ?page=2&annotation=3TVGD5RH)
> > ![[images/zotero/53832433TVGD5RH.png|500]]
> > ^3TVGD5RHaH9SGRTMQg5383243p2
# Citations

View File

@ -2,6 +2,7 @@
aliases:
- effet de bord
- side effect
- effets de bord
---
up:: [[programmation]]
#informatique

View File

@ -1,6 +1,7 @@
---
aliases:
- fonction
- fonctions
---
up:: [[programmation]]
#informatique