> One of the great advantages of Ring (and other purely functional bits that 
> stack on top, like Compojure, Bishop, etc) is that its handlers are readily 
> composable.  Among other things, this means that way you compose handlers 
> from two different namespaces in the same app is fundamentally no different 
> than the way you compose handlers from N different applications (which can 
> come from different projects, maintained by different teams, etc).  Combined 
> with something like Compojure's nested routes[1], this is a simple and 
> powerful way to build modular web apps and services by default.
>
> I presume the same can be done with two Noir apps as well, but something 
> would need to be done to translate or remap each app's routes so that they're 
> not stepping on each other's toes?  I suspect the same would apply to 
> anything that Noir adds imperatively to such global maps, like middleware.


Thanks for expanding, Chas.  I couldn't quite see what Adam was
describing.  Most of what you describe is doable in Noir, though I see
your point...its handling of contexts and coupling of app to
middleware can make some of that difficult.

 - Mark

On Thu, Sep 13, 2012 at 12:56 PM, Chas Emerick <c...@cemerick.com> wrote:
> On Sep 13, 2012, at 11:57 AM, Mark Rathwell wrote:
>
>>> If I'm right then defining your 'globals' (for lack of a
>>> better word) like this would mean, among other things, that you really can't
>>> have two independent Noir apps defined/running in the same project - is that
>>> a correct assessment?
>>
>> Just out of curiosity, could you expand on what you mean here?  What
>> types of situations would you need/want multiple independent Noir apps
>> defined/running in the same project?
>
> One of the great advantages of Ring (and other purely functional bits that 
> stack on top, like Compojure, Bishop, etc) is that its handlers are readily 
> composable.  Among other things, this means that way you compose handlers 
> from two different namespaces in the same app is fundamentally no different 
> than the way you compose handlers from N different applications (which can 
> come from different projects, maintained by different teams, etc).  Combined 
> with something like Compojure's nested routes[1], this is a simple and 
> powerful way to build modular web apps and services by default.
>
> I presume the same can be done with two Noir apps as well, but something 
> would need to be done to translate or remap each app's routes so that they're 
> not stepping on each other's toes?  I suspect the same would apply to 
> anything that Noir adds imperatively to such global maps, like middleware.
>
> Cheers,
>
> - Chas
>
> [1] https://github.com/weavejester/compojure/wiki/Nesting-routes
>
> --
> You received this message because you are subscribed to the Google
> Groups "Clojure" group.
> To post to this group, send email to clojure@googlegroups.com
> Note that posts from new members are moderated - please be patient with your 
> first post.
> To unsubscribe from this group, send email to
> clojure+unsubscr...@googlegroups.com
> For more options, visit this group at
> http://groups.google.com/group/clojure?hl=en

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en

Reply via email to