ScrumIA

← Tous les modules

🎭 scrumia-effect

Les effets comme valeurs, pas comme exceptions — la discipline qui se place au-dessus de Result, Either, IO/suspend, et effect.website sans s'y substituer.

slot · aucun version · 0.1.0

Ce dont il est responsable

Six refus qui façonnent un code base autour des effets typés : chaque règle nomme l'approche qu'elle informe (Result, Either, IO/suspend, effect.website, ou niveau discipline) ; les quatre approches sont empilées, jamais substituées ; effect.website est cité par URL et jamais encapsulé ; les échecs récupérables empruntent le chemin de valeur, jamais le throw ; le retry est une donnée portée par l'échec composée comme fonction sur l'effet, jamais une boucle try/catch au site d'appel ; la frontière d'effet est la couture où la description passe à l'exécution, avec les environnements et layers (là où ils s'appliquent) qui remplacent les dépendances injectées par constructeur. Livre une compétence de référence scrumia-effect et dix guides — un pour la discipline, quatre pour les approches, plus la sémantique d'erreur et le retry-comme-donnée.

Ce qu'il refuse

Une règle d'effet qui ne nomme pas l'approche qu'elle informe. Un Result appelé Either dont on jette la gauche, ou un IO appelé suspend qui enveloppe une valeur — les quatre sont empilés, pas interchangeables. Un client d'effect.website livré sous la prose de ce module. Un échec récupérable lancé pour être rattrapé une frame plus haut. Une boucle try/catch de retry autour d'un site d'appel. Un service-locator à la frontière d'effet — les environnements et layers (là où ils s'appliquent) remplacent les dépendances injectées par constructeur.

L'hypothèse qu'il fait

Présume que les effets sont des valeurs, pas des exceptions, et qu'une discipline au-dessus des approches bat une abstraction fraîche par-dessus. Result, Either, IO/suspend, et effect.website sont des choix réels et distincts — la discipline se place au-dessus et ne substitue jamais l'une à l'autre. Coûte la friction d'énoncer la couture entre description et exécution, le rend en un code dont le chemin d'échec porte assez d'information pour continuer.

Ses compétences

Étiquettes

Ce à quoi il se branche

RegistreSensModule
find-speccontribuescrumia-specs
implementcontribuescrumia-github-project
reviewcontribuescrumia-github-project

L'installer

/plugin install scrumia-effect@scrumia

Lire le source sur GitHub