Puas yog txhua tus monads Monoids?
Puas yog txhua tus monads Monoids?

Video: Puas yog txhua tus monads Monoids?

Video: Puas yog txhua tus monads Monoids?
Video: Puas Yog Tim Nyiaj? Cover (Official Music Video 2023) Ncais Vaj 2024, Kaum ib hlis
Anonim

Ib tug zoo-hais tias, tej zaum cov lus luv luv puas tau teb yog: A monad tsuas yog ib monoid nyob rau hauv qeb ntawm endofunctors. Txaus siab rau monoid axioms (i. & ii.), a monad tuaj yeem pom ua ib monoid uas yog ib qho endofunctor ua ke nrog ob lub ntuj hloov pauv.

Ntawm no, Monad Endofunctor yog dab tsi?

Hauv qeb txoj kev xav, ib ceg ntawm kev ua lej, a monad (kuj triple, triad, qauv tsim thiab siv hauv paus) yog ib qho endofunctor (ib tug functionality mapping ib qeb rau nws tus kheej), ua ke nrog ob tug natural transformations yuav tsum tau ua kom tiav tej coherence tej yam kev mob.

Tom qab ntawd, lo lus nug yog, dab tsi yog Bifunctor? A bifunctor (tseem hu ua binary functor) yog ib qho khoom siv uas nws lub npe yog cov khoom lag luam. Nws tuaj yeem pom tau tias yog tus ua haujlwm hauv ob qhov kev sib cav. Hom Functor yog ib qho piv txwv ntuj; nws yog contravariant nyob rau hauv ib qho kev sib cav, covariant nyob rau hauv lwm yam. Ib tug multifunctor yog ib tug generalization ntawm lub tswv yim functional rau n variables.

Tom qab ntawd, Monad yog dab tsi hauv programming?

Los ntawm wikipedia: Hauv kev ua haujlwm programming , a monad yog ib hom kev paub daws teeb meem cov ntaub ntawv siv los sawv cev kev suav (es tsis yog cov ntaub ntawv hauv tus qauv sau). Monads tso cai rau programmer txhawm rau txuas cov kev nqis tes ua ua ke los tsim cov raj xa dej, uas txhua qhov kev txiav txim tau dai kom zoo nkauj nrog cov txheej txheem ua haujlwm ntxiv los ntawm cov monad.

Monad Haskell yog dab tsi?

Hauv Haskell a monad yog sawv cev raws li hom constructor (hu nws m), muaj nuj nqi uas tsim qhov tseem ceeb ntawm hom ntawd (a -> ma), thiab muaj nuj nqi uas muab cov txiaj ntsig ntawm hom ntawd nrog kev suav uas tsim cov txiaj ntsig ntawm hom ntawd los tsim kev suav tshiab rau tus nqi ntawm hom ntawd (ma -> (a -> mb) -> mb).

Pom zoo: