cours/citoyen de première classe.md
Oscar Plaisant 602a41e7f8 update
2024-12-25 22:30:24 +01:00

33 lines
1.1 KiB
Markdown

---
aliases:
- objet de première classe
- entité de première classe
- valeur de première classe
---
up:: [[programmation]]
#s/informatique
> [!definition] objet de première classe
> Un citoyen (ou entité, ou objet, ou valeur) de première classe est une entité qui peut être utilisée *sans restrictions*, c'est-à-dire qu'elle peut être traîtée comme les autres objets ou valeurs du langage.
^definition
> [!example] Implications dans différents langages
> - être expressible comme valeur anonyme littérale
> - être affecté à des variables ou dans des [[structure de données|structures de données]]
> - avoir une identité intrinsèque
> - être comparable (pour l'égalité ou l'identité)
> - pouvoir être passé comme paramètre à une procédure / fonction
> - pouvoir être renvoyé par une procédure ou une fonction
> - pouvoir être constructible lors de l'exécution
> [!smallquery]+ Sous-notes de `$= dv.el("span", "[[" + dv.current().file.name + "]]")`
> ```breadcrumbs
> type: tree
> collapse: false
> mermaid-direction: LR
> mermaid-renderer: elk
> show-attributes: [field]
> field-groups: [downs]
> depth: [0, 1]
> ```