Web API
perhaps can write an application in one language, with invisible seams between server and client
js for the client is automatically generated
dividing lines between client and server code in the compiled code depend on
-ideal minimum granularity for breaking up server vs client code
-information flow required between data sections and client sections
-data that is tagged as tainted, i.e. the client isn't allowed to see anything modified by that data. works like a taint bomb in pypy
-use google's RHS
-keep a serverside copy of the DOM, so code can modify the page and then it doesn't get updated until the code executes a submit api function, or a keyword or function that tells what data is to be hidden to the client until further notice
that way websites can be made for both js and non-js in one shot. for example, a certain click for js users would drop down a menu. for non-js users it would be a link, and it modify the serverside dom and when the menu is fully dropped submit would be called and the page would be sent.
js parts that don't fall under the api's dom manipulation functions would simply be ignored for non-js users.
-use greenlets/coroutines where context is remembered via cookies, so a website can be programmed more like an application - with state, and not having to use defereds
-wsgi using IOCP, or on linux select/epoll
-greenlets separated into processes for each core