<div dir="ltr"><div>Thanks for the explanation.</div><div><br></div>I have a small function for applying different middleware to different routes that I put up on a pull request now.<div><a href="https://github.com/yesodweb/wai/pull/384">https://github.com/yesodweb/wai/pull/384</a><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Jun 12, 2015 at 11:09 AM, Anupam Jain <span dir="ltr"><<a href="mailto:ajnsit@gmail.com" target="_blank">ajnsit@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Ah great question! One that I keep revisiting in my mind every time I<br>
think of adding something to wai-routes. Short answer - No. Long<br>
answer follows.<br>
<br>
Wai-routes' stated goal is to "provide a similar level of typesafe URL<br>
functionality to Wai applications as is available to Yesod<br>
applications". The feature list may make it seem like a larger<br>
framework, but it's really all just features provided by the routing<br>
code from yesod! Writing plain wai apps is tough though, so wai-routes<br>
provides a thin veneer over some of the rough edges, just enough to<br>
make it pleasant.<br>
<br>
Sometimes the simplicity of wai-routes makes it easier to use than<br>
Yesod. For example, it is really easy to have multiple independent<br>
route sets that match one after the other, so you can better logically<br>
group your app, instead of putting all routes in one big file. You can<br>
also apply different middleware to the different route sets. I'm<br>
currently not aware of any way to do that in Yesod.<br>
<br>
The de-coupling from wai also insulates the user from changes to the<br>
wai api. So the same wai-routes code continued to work when Wai-3.0<br>
changed to a CPS style. ...Though that leaves the user vulnerable to<br>
changes in the wai-routes api... which happens quite more often... So,<br>
forget I said that! :)<br>
<br>
-- Anupam<br>
<div><div class="h5"><br>
<br>
On Fri, Jun 12, 2015 at 9:58 PM, Greg Weber <<a href="mailto:greg@gregweber.info">greg@gregweber.info</a>> wrote:<br>
> To me, wai-routes seems like a full web framework and a re-implementation of<br>
> Yesod (I am not suggesting that it is a bad thing). Is that its goal?<br>
><br>
> On Tue, Jun 9, 2015 at 3:54 PM, Anupam Jain <<a href="mailto:ajnsit@gmail.com">ajnsit@gmail.com</a>> wrote:<br>
>><br>
>> Hi all,<br>
>><br>
>> I have just released v0.7 of wai-routes, the typesafe urls framework<br>
>> for wai. After letting the code rot for several months, I finally<br>
>> managed to carve out some time to do a bit of housekeeping. The code<br>
>> now compiles with ghc 7.8 and 7.10, and is compatible with wai-3.0.<br>
>> The dependency on yesod-routes has also been removed, as that package<br>
>> was deprecated, and its code has been folded into wai-routes.<br>
>><br>
>> I also took the opportunity to add a few long pending features -<br>
>> 1. Subsites! Simpler than the corresponding concept in Yesod, though<br>
>> probably less powerful as well. This is still an evolving experimental<br>
>> feature.<br>
>> 2. Ability to get information about the currently executing route,<br>
>> including the Route Attributes (which is exactly the same thing as in<br>
>> Yesod).<br>
>><br>
>> Get it at -<br>
>> [<a href="http://hackage.haskell.org/package/wai-routes" rel="noreferrer" target="_blank">http://hackage.haskell.org/package/wai-routes</a>]<br>
>> [<a href="https://github.com/ajnsit/wai-routes" rel="noreferrer" target="_blank">https://github.com/ajnsit/wai-routes</a>].<br>
>><br>
>> Feedback would be greatly appreciated, especially from people using<br>
>> wai-routes in their projects!<br>
>><br>
>> -- Anupam<br>
>><br>
>> --<br>
>> You received this message because you are subscribed to the Google Groups<br>
>> "Yesod Web Framework" group.<br>
>> To unsubscribe from this group and stop receiving emails from it, send an<br>
>> email to <a href="mailto:yesodweb%2Bunsubscribe@googlegroups.com">yesodweb+unsubscribe@googlegroups.com</a>.<br>
>> For more options, visit <a href="https://groups.google.com/d/optout" rel="noreferrer" target="_blank">https://groups.google.com/d/optout</a>.<br>
><br>
><br>
> --<br>
> You received this message because you are subscribed to the Google Groups<br>
> "Yesod Web Framework" group.<br>
><br>
> To unsubscribe from this group and stop receiving emails from it, send an<br>
> email to <a href="mailto:yesodweb%2Bunsubscribe@googlegroups.com">yesodweb+unsubscribe@googlegroups.com</a>.<br>
> For more options, visit <a href="https://groups.google.com/d/optout" rel="noreferrer" target="_blank">https://groups.google.com/d/optout</a>.<br>
<br>
--<br>
</div></div><span class="">You received this message because you are subscribed to the Google Groups "haskell-wai" group.<br>
To unsubscribe from this group and stop receiving emails from it, send an email to <a href="mailto:haskell-wai%2Bunsubscribe@googlegroups.com">haskell-wai+unsubscribe@googlegroups.com</a>.<br>
To post to this group, send email to <a href="mailto:haskell-wai@googlegroups.com">haskell-wai@googlegroups.com</a>.<br>
</span>To view this discussion on the web visit <a href="https://groups.google.com/d/msgid/haskell-wai/CAKit5aAcYFP4v24-9ZqV-XdZkgk5VOZR4cbgyzjPBT5jmKBdrg%40mail.gmail.com" rel="noreferrer" target="_blank">https://groups.google.com/d/msgid/haskell-wai/CAKit5aAcYFP4v24-9ZqV-XdZkgk5VOZR4cbgyzjPBT5jmKBdrg%40mail.gmail.com</a>.<br>
<div class="HOEnZb"><div class="h5">For more options, visit <a href="https://groups.google.com/d/optout" rel="noreferrer" target="_blank">https://groups.google.com/d/optout</a>.<br>
</div></div></blockquote></div><br></div>