<div dir="ltr">Dmitry,<div><br></div><div>Well, actually, I was not aware that singletons provide this functionality!</div><div><br></div><div>From what I see singletons seem to be an overkill for my use case.</div><div><br></div><div>Thanks for the hint though, I will look into singletons more to see if it fits the bill.</div><div><br></div><div>Kind regards,</div><div>Nick</div><br><div class="gmail_quote"><div dir="ltr">On Mon, 8 Feb 2016 at 13:21 Dmitry Olshansky <<a href="mailto:olshanskydr@gmail.com" target="_blank">olshanskydr@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hello,<div><br></div><div>I wonder if <a href="https://hackage.haskell.org/package/singletons" target="_blank">singletons</a> library doesn't satisfy your requrements? Did you look at this opportunity? <a href="https://hackage.haskell.org/package/singletons-2.0.1/docs/Data-Promotion-Prelude-List.html#t:Nub" target="_blank">Here</a> is a Nub implementation.</div><div><br></div><div>I am particulary interested in this because I am checking now this library for usung it in my project. Had you some reasons to refuse it?</div><div><br></div><div>Best regards,</div><div>Dmitry</div></div><div class="gmail_extra"><br><div class="gmail_quote"></div></div><div class="gmail_extra"><div class="gmail_quote">2016-02-07 16:37 GMT+03:00 Nickolay Kudasov <span dir="ltr"><<a href="mailto:nickolay.kudasov@gmail.com" target="_blank">nickolay.kudasov@gmail.com</a>></span>:<br></div></div><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Dear Cafe,<div><br></div><div>I have faced a type-level performance problem (with GHC 7.10.3).</div><div>I am trying to implement type-level Nub which removes duplicates from a type-level list.</div><div><br></div><div>My implementation [1] with an example of a list of length 20 takes forever to compile. If you reduce the size of the example list (e.g. to 15 items), it will compile faster. Also, if you remove the Nub application from exampleVals, it compiles instantly (this is how I know the problem is in Nub).</div><div><br></div><div>My question is how can I speed up type-level Nub?</div><div>And less importantly why exactly is it this slow?</div><div><br></div><div>The practical application for this is building automatic tests [2] for servant-swagger. There I am interested in generating exactly one test for each distinct type.</div><div><br></div><div>Kind regards,</div><div>Nick</div><div><br></div><div>[1] <span><a href="https://gist.github.com/fizruk/06458fe8b62a1e562af1" target="_blank">https://gist.github.com/fizruk/06458fe8b62a1e562af1</a></span></div><div>[2] <a href="http://hackage.haskell.org/package/servant-swagger-1.0.2/docs/Servant-Swagger-Test.html" target="_blank">http://hackage.haskell.org/package/servant-swagger-1.0.2/docs/Servant-Swagger-Test.html</a></div></div>
<br></blockquote></div></div><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">_______________________________________________<br>
Haskell-Cafe mailing list<br>
<a href="mailto:Haskell-Cafe@haskell.org" target="_blank">Haskell-Cafe@haskell.org</a><br>
<a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe" rel="noreferrer" target="_blank">http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe</a><br>
<br></blockquote></div></div></blockquote></div></div>