To be technical, they don't consist of any 'mark up' so to speak.
Yes, very good, you that was indeed my meaning
I also don't surf Thunderbird or Outlook with my webbrowser, so yeah.
The point is that proper markup makes information accessible. A web application (as opposed to a web site) does not contain information that should be accessible to machines, just to you. Something like GMail is the same as Thunderbird, but hosted in a web browser. This is exactly why we should come up with a new kind of web application platform, and stop abusing browsers.
Also note that my views on PHP have changed somewhat since I opened this topic. PHP5 has a lot of improvements which solve many of these things, such as autoloading and namespaces (5.3). Mixing functional programming with OO isn't that bad either, if you're talking about closures (I still think it's ugly to define normal functions in an OO app, mostly because you can't autoload them). The lack of exceptions from old functions can be caught with a custom error handler that wraps them in exceptions. It also has some advantages over Java in that it is very dynamic, and that you can edit->save->test without having to compile and deploy stuff.