Direct client access to a database as being the most prominent concern raised here (which to me was the main concern as well) - I will need to think about it.
Say we magically got rid of the security problem (thus eliminating a middle tier - and I admit it'd be some pretty mean magic), then could your second point could be addressed by this: http://news.ycombinator.com/item?id=4518443 ?
Regarding your third point, I agree it's not the most elegant of languages - but if some language which is elegant could run on browsers and had database access capabilities, would one use that instead of having a middle tier to generate "pages"? (as things stand, much of the middleware these days generates and receives JSON/XML and data anyway - can we do away with generating that initial HTML totally?)
Your original point was that we might not need server-side languages or frameworks at all. "The grid" is still a server - it's just not one you control directly. I don't think we'll ever get away from servers because there are definite advantages available by having computation centralized - you can have more powerful hardware available, you don't need to worry about outdated versions of code running, etc.
More broadly, though - there's nothing specific to a language that allows or disallows communication with a database. That's really the realm of a library or a driver to interact with the database (an external service) through some established protocol. People have written databases with JS hooks before, but it's just not common, likely because of the security problem.
Say we magically got rid of the security problem (thus eliminating a middle tier - and I admit it'd be some pretty mean magic), then could your second point could be addressed by this: http://news.ycombinator.com/item?id=4518443 ?
Regarding your third point, I agree it's not the most elegant of languages - but if some language which is elegant could run on browsers and had database access capabilities, would one use that instead of having a middle tier to generate "pages"? (as things stand, much of the middleware these days generates and receives JSON/XML and data anyway - can we do away with generating that initial HTML totally?)