Homomorphic static analysis
Summary
The article explores how homomorphic static analysis can be performed in Haskell-like contexts by interpreting code in alternate contexts and analyzing effects without execution. It shows how Functor, Applicative, and Monad constraints affect static analysis, and extends the idea to categorical structures, including Profunctor, Category, Strong, and Choice, with an example interface and an eye toward visualization.