For Python frameworks specifically, look here:  
http://wiki.python.org/moin/WebFrameworks. Note, I think Pylons is 
mis-categorized on that page -- it has no templating engine or ORM (or other 
full-stack goodies), so I think it belongs in the basic category. Werkzeug 
probably also belongs in the basic category (currently listed in "Other 
Full-Stack Frameworks").
 
Rather than just "full-stack" vs. "glued", it might make sense to think of 
two separate dimensions: (1) full-stack vs. basic (which is how the 
above-linked page is categorized), and (2) integrated vs. glued. So, you can 
have integrated full-stack (web2py, Django), glued full-stack (TurboGears), 
integrated basic (Pylons, Pyramid, CherryPy), and glued basic (Flask). I say 
glued for Flask because it is based on Werkzeug and Jinja2, though all three 
are developed by the same guy, so it's a borderline case.
 
There's also the micro vs. non-micro distinction. Here's how Flask defines 
micro:

*The “micro” in microframework refers not only to the simplicity and small 
size of the framework, but also to the typically limited complexity and size 
of applications that are written with the framework. Also the fact that you 
can have an entire application in a single Python file. To be approachable 
and concise, a microframework sacrifices a few features that may be 
necessary in larger or more complex applications.*

Although most microframeworks are probably "basic", I don't think "micro" is 
necessarily synonymous with "basic" (e.g., Pyramid is basic, but not 
micro). 
 
Joomla is a CMS (http://en.wikipedia.org/wiki/Web_content_management_system), 
like Drupal, Plone, Wordpress, etc. I don't think they would be considered 
"glued" in any sense. 
 
 
 On Wednesday, March 2, 2011 4:30:51 PM UTC-5, Sean wrote:

> "Web frameworks are typically categorized as one of two types: A 
> "glued" framework is built by assembling (gluing together) several 
> third-party components. A "full-stack" framework is built by creating 
> components designed specifically to be tightly integrated and work 
> together" 
>  
> From above, I guess Rails, Pylon, web2py, django... are "full stack" 
> framework. 
>  
> Can someone give a quite comprehensive list for the other categorty? 
> (is joomla this category?)
>

Reply via email to