Jsou všechny monády monoidy?
Jsou všechny monády monoidy?

Video: Jsou všechny monády monoidy?

Video: Jsou všechny monády monoidy?
Video: The Mamas & The Papas - California Dreamin' (Official HD Video) 2024, Prosinec
Anonim

Dobře řečená, možná nejstručnější odpověď vůbec je: A monáda je jen a monoidní v kategorii endofuktorů. Spokojený monoidní axiomy (i. a ii.), a monáda lze vidět jako a monoidní což je endofunktor spolu se dvěma přirozenými transformacemi.

Co je to Monad Endofunctor?

V teorii kategorií je odvětví matematiky, a monáda (také trojitá, trojitá, standardní konstrukce a základní konstrukce) je an endofunktor (funktor mapující kategorii na sebe), spolu se dvěma přirozenými transformacemi nutnými ke splnění určitých podmínek koherence.

Následně je otázkou, co je to bifunktor? A bifunktor (také známý jako binární funktor) je funktor, jehož doménou je kategorie produktu. Může být viděn jako funktor ve dvou aktantech. Přirozeným příkladem je funktor Hom; v jednom argumentu je kontravariantní, v druhém kovariantní. Multifunktor je zobecněním pojmu funktor na n proměnných.

Co je tedy Monad v programování?

Z wikipedie: Ve funkční programování , a monáda je druh abstraktního datového typu používaného k reprezentaci výpočtů (místo dat v doménovém modelu). Monády povolit programátor zřetězení akcí dohromady za účelem vybudování potrubí, ve kterém je každá akce zdobena dalšími pravidly zpracování, která poskytuje monáda.

Co je Monad Haskell?

v Haskell A monáda je reprezentován jako konstruktor typu (nazývejte jej m), funkce, která vytváří hodnoty tohoto typu (a -> ma), a funkce, která kombinuje hodnoty tohoto typu s výpočty, které vytvářejí hodnoty tohoto typu, aby vytvořily nový výpočet pro hodnoty tohoto typu (ma -> (a -> mb) -> mb).

Doporučuje: