Posted by ronald_istos on September 18, 2010 at 4:19pm
There is a good range of ideas by now and a decent understanding of some of the challenges at least. Sounds like a good moment for some comparative research. I am looking at a few other frameworks/cms to see if such concepts evem exist and if they do how they are tackled.
Please suggest which ones you would like to see compared (not just php!) or go right ahead and post a comparison here.
Will be reporting as I make progress.

Comments
lack of context in PHP
I've been looking at various CMSs, especially the ones that at least claim to aspire to good architecture (e.g. habari, concrete5, modx). Bottom line is that none of the really supporting anything close to the notion of context and next generation blocks that is being discussed here for Drupal. I guess that is not a surprise but I was hoping for at least some initial notions.
In terms of pure PHP frameworks the one that seems to be worth taking a look at is Kohana. First of all for its autoloading awesomeness, although not directly related to context it is definitely worth taking a look at as an example of how that autoloading can be managed: http://kohanaframework.org/guide/using.autoloading
Secondly because it has a clean separation of concerns between Routing, Request, Response and Controller and Views. While it says it is MVC really it is more like a Drupal PAC or a Hierarchical MVC architecture: http://kohanaframework.org/guide/api/Request - definitely clean (and now I see why Rasmus said he was using that during his Keynote in Copenhagen).
So barring any other suggestions of PHP systems to look at we move on to other languages although I have a feeling that this is pretty much the lay of the land and really what we need to be looking at is work on context in true distributed systems because that is what is ultimately being suggested. Problem with such solutions is that they talk about way much more than what is really required at this stage - but they can offer some interesting pointers and at least reasons to support one approach vs another.
Good information
Thanks for taking the time and effort on researching this.
Those var_dump()s of
Those var_dump()s of properties on the Kohana Request object are really, really great food for thought.
*strokes goatee*
We've been toying with the idea in other threads in this group of having a Response object. The context object has essentially turned into a request object on steroids. However, we haven't yet figured out how to have a Response object for keeping track of things other than a basic string return from blocks.
I'd love to do so, I'm just not sure how we'd do that at the moment.
symfony 2 - dependency injection container
http://symfony-reloaded.org/architecture
I did not take the time yet, but I think this dpi stuff deserves a closer look.
Ok. I assume there is a dpi
Ok. I assume there is a dpi at work somewhere, but how does application code interact with that?
In the examples I read so far, every piece of data is (indirectly) pulled either from a $controller (via $this) or a $view object.
This could be translated to Drupal's menu callbacks (controller) and theme layer, but not much more.
Zend example
Zend as a lot of good stuff in it, like the ContextSwitch action helper.
The whole idea is that the controller is able to determine which context to use. Contextes are being used in order to output data in a specific format.
But more important, the selected context has the ability to enable or disable the full page layout, and every plugin at every step of the runtime can access the current context and do stuff depending on the current nature/implementation.
Pierre.
Link?
Have a link to a tutorial or explanation of how theirs works?
Yes I can provide you some,
Yes I can provide you some, the documentation of that stuff is not that exhaustive and is missing a lot. You'll have to read some Zend code to fully understand the stuff. I'm not a Zend expert (even if I developed a bit with it).
Some global documentation talking about their MVC implementation, with slight mentions:
http://framework.zend.com/manual/en/zend.controller.actionhelpers.html
Here is a code sample (really simple):
http://www.zfsnippets.com/snippets/view/id/48
I know this isn't much, but I'll do some more research to find good examples about linking the context to the view renderer / layout builder etc..
Pierre.