Ve funkcionálním programování se uvádí, že typové operátory musí splňovat několik rovností, aby byly funktory (viz například Wikipedie nebo dokumentace k Haskellu). Zároveň se uvádí, že programátor musí věřit autorům knihovny, že jejich funktory ony rovnosti splňují, že to překladač Haskellu neumí. Existuje nějaký jazyk, který umí podmínky u funktorů a podobných operátorů zaručit automaticky ve vší obecnosti?