Graph explorer

Free Applicative Functors

Applicative functors are a generalisation of monads. Both allow the expression of effectful computations into an otherwise pure language, like Haskell. Applicative functors are to be preferred to monads when the structure of a computation is fixed a priori. That makes it possible to perform certain kinds of static analysis on applicative values. We define a notion of free applicative functor, prove that it satisfies the appropriate laws, and that the construction is left adjoint to a suitable forgetful functor. We show how free applicative functors can be used to implement embedded DSLs which can be statically analysed.

5 nodes5 linksoverview previewFree Applicative Functors
5 nodes5 links
Free Applicative Functors5 visible / 5 total nodes / 6 links
Co-authorshipAuthorshipAuthorshipTopic signalTopic signalRelated contextWFree Applicative Functorspreprint / 2014APaolo CapriottiResearcherAAmbrus KaposiResearcherTProgramming Languages1239 worksTmath.CT1150 works
PaperSignal 104 links

Free Applicative Functors

preprint / 2014

Open