You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Right now we are using https://hackage.haskell.org/package/mustache, but our surface between Haskell and templates is pretty loose type-wise (because we are passing Aeson objects), creating space for runtime errors. Plan is to either define data types that precisely describe each template (but we still have to ensure they correctly describe the templates) or (would be better) to find another mechanism for templates that is somehow better integrated with Haskell - maybe it creates types based on template content, while compiling them, and you have to use those types then - hm how would that work is that even possible?
Right now we are using https://hackage.haskell.org/package/mustache, but our surface between Haskell and templates is pretty loose type-wise (because we are passing Aeson objects), creating space for runtime errors. Plan is to either define data types that precisely describe each template (but we still have to ensure they correctly describe the templates) or (would be better) to find another mechanism for templates that is somehow better integrated with Haskell - maybe it creates types based on template content, while compiling them, and you have to use those types then - hm how would that work is that even possible?
I found this https://hackage.haskell.org/package/shakespeare -> I think this might be what we are looking for.
Although, it seems like shakespear demands templates to be either HTML, CSS or JS -> it is not as flexible as we would like it to be, it is meant more to be used as part of web framework.
In our case, these might make more sense:
https://hackage.haskell.org/package/heterocephalus or https://hackage.haskell.org/package/haiji .
So far,
heterocephalus
sounds most promising.Dhall might also be interesting.
The text was updated successfully, but these errors were encountered: