[Haskell-cafe] How to tie knots in XML-style data structures
Auke Booij
auke at tulcod.com
Tue Jan 3 10:50:59 UTC 2017
On 3 January 2017 at 00:08, Sergey Vinokurov <serg.foo at gmail.com> wrote:
> The complete code with my attempt is in the attachment.
Thanks a lot for your work, Sergey. Your suggested solution contains
many useful elements.
I am still not quite satisfied, however, as your solution does not let
me convert the following:
sampleEnv :: Map String Blah
sampleEnv = M.fromList
[ ("first", BlahF "first" 5 [YadaF "second"])
, ("second", BlahF "second" 3 [YadaF "first"])
]
(the point here is that the "tie knots" in the thread subject means
that we end up with potentially cyclic values)
> information on
> Fix type I'd recommend to read on recursion schemes/F-algebras, e.g.
> https://github.com/willtim/recursion-schemes/raw/master/slides-final.pdf.
In retrospect this indeed sounds like the right solution, thanks for
the pointer.
More information about the Haskell-Cafe
mailing list