http://disnetdev.com/blog/2012/10/14/hygienic-macros-for-jav...
and http://brendaneich.github.com/Strange-Loop-2012/#/40 http://www.infoq.com/presentations/State-JavaScript