Modules
I think compartmentalizing Html
, Props
, and Prop
away from the main Shpadoinkle.Core
module would be a good decision. It makes the codebase a bit more readable, and could allow for easier pop-and-swaps in the future (maybe something like TextMap
for a GHC-only version of Props
, or something similar.
Furthermore, a lot of the constraints in many terms relied on Monad m =>
, when Applicative m =>
or even Functor m =>
would suffice. This may not realistically improve performance, but still is generally a good habit IMHO.