Volná monáda

monáda

Volná monáda je v teorii kategorií monáda vytvořená z funktoru s nejvolnější možnou strukturou. Na rozdíl od "běžných" monád nereprezentuje žádný sekvenční výpočet a lze ji "rozbalit", tj. získat v ní "zabalenou" hodnotu.

Volná monáda je počátečním objektem v kategorii monád, tj. do každé monády z ní vede právě jeden morfismus. Morfismus je morfismem mezi monádami, pokud platí a .

Funkcionální programováníEditovat

V Haskellu je typ volné monády nad funktorem f

Free f a = Pure a | Roll (f (Free f a))

Volné monády se ve funkcionálním programování používají k implementaci interpretů doménově specifických jazyků, protože poskytují syntakticky definovanou operaci bind.