Jesu li sve monade Monoidi?
Jesu li sve monade Monoidi?

Video: Jesu li sve monade Monoidi?

Video: Jesu li sve monade Monoidi?
Video: Humans Full Potential vs All of Mythology | #shorts #mythology #whoisstrongest 2024, Travanj
Anonim

Dobro izrečen, možda najkraći odgovor ikad glasi: A monada je samo a monoidni u kategoriji endofunktora. Zadovoljan monoidni aksiomi (i. i ii.), a monada može se promatrati kao a monoidni koji je endofunktor zajedno s dvije prirodne transformacije.

Ovdje, što je Monad Endofunctor?

U teoriji kategorija, grana matematike, a monada (također trojka, trozvuk, standardna konstrukcija i temeljna konstrukcija) je an endofunktor (funktor koji preslikava kategoriju u samu sebe), zajedno s dvije prirodne transformacije potrebne za ispunjavanje određenih uvjeta koherentnosti.

Potom se postavlja pitanje što je bifunktor? A bifunktor (također poznat kao binarni funktor) je funktor čija je domena kategorija proizvoda. Može se promatrati kao funktor u dva argumenta. Funktor Hom je prirodan primjer; on je kontravarijantan u jednom argumentu, kovarijantan u drugom. Multifunktor je generalizacija koncepta funktora na n varijabli.

Što je onda monada u programiranju?

Iz wikipedije: U funkcionalnom programiranje , a monada je vrsta apstraktnog tipa podataka koji se koristi za predstavljanje izračuna (umjesto podataka u modelu domene). Monade dopustiti programer ulančavati akcije zajedno kako bi se izgradio cjevovod, u kojem je svaka radnja ukrašena dodatnim pravilima obrade koje osigurava monada.

Što je Monad Haskell?

U Haskell a monada je predstavljen kao konstruktor tipa (nazovite ga m), funkcija koja gradi vrijednosti tog tipa (a -> ma) i funkcija koja kombinira vrijednosti tog tipa s izračunima koji proizvode vrijednosti tog tipa kako bi proizveli novi izračun za vrijednosti tog tipa (ma -> (a -> mb) -> mb).

Preporučeni: