IT-lexikon Programmering Monad

Monad

Programmering In English → Uppdaterad: 2026-05-23

Funktionell abstraktion för att kedja beräkningar som "bär med sig kontext" — Optional, Result, Promise, List är alla monader vare sig deras språk kallar dem så.

En typ M<T> är en monad om den har två operationer: of (lyft ett värde in i kontexten) och flatMap/bind (kedja en funktion T → M<U> utan att nästla). Detta gör att man kan komponera operationer som kan misslyckas, vara asynkrona eller producera flera värden — utan att skriva felhantering på varje steg.

Berömt obegripligt förklarat ("monoid i kategorin av endofunktorer"). I praktiken: om du har använt Promise.then eller Rusts ?-operator har du använt monader.

← Tillbaka till lexikonet