I am proposing a theme engine that relies on blocks, rather than flat files. <snip> My node solution simply replaces the .tpl.php files with nodes managed in the database. Two thoughts spring to mind. Firstly that (from what I've read) querying the database is often one of the bottlenecks in Drupal - is that not going to create a performance problem.
Definitely. Going to the database multiple times per page MORE than we have now will be a bottle neck.
It might facilitate an inline theme 'editor' though, I know some people like that idea.
Maybe we can have a hybrid approach: Use the database to design the layout and its components, then have a "generate" button that would convert that finished design to flat files.
Secondly. I have all this useful software with great features like syntax highlighting, code completion, code folding, integrated access to reference manuals etc. How do I bring those tools to bear on a tpl in a database? Not an insurmountable problem, and perhaps not even relevant to the people your idea is aimed at, but still, I pose the question ;)
Good point ...