A "monád" kifejezés a filozófiában és a matematika területén egyaránt fontos szerepet tölt be. Filozófiai értelemben a monád a "leibnizi monádológia" központi fogalma, amelyet Gottfried Wilhelm Leibniz vezetett be. Ez alapján a monádok absztrakt, egyszerű, oszthatatlan és alapvető egységek, amelyek a valóság építőelemei. Nem rendelkeznek kiterjedéssel vagy formával, és belső tulajdonságaik szerint különböznek egymástól.
A programozásban és matematikában a monád egy magasabb rendű funkciók kategóriáiból származó konstrukció, ami segíti az összetett műveletek láncolását és dolgozik az oldalhatások kezelésével. A monádok használata különösen elterjedtté vált a Haskell programozási nyelvben.
Példák a monádok használatára:
-
May be monád (Option): Lehetővé teszi, hogy egy művelet opcionális eredményt adjon vissza, minimalizálva a hibákat.
-
List monád: Segít a listákkal végzett műveletek egyszerűsítésében. Megkönnyíti a listákra való leképezést és összefűzést.
-
IO monád: A bemenetek és kimenetek kezelést teszi biztonságossá és kiszámíthatóvá.
A monádok világosabbá tehetik a kódot és segíthetik a logikai hibák elkerülését, ugyanakkor megértésük némi gyakorlást és tapasztalatot igényel.