JavaScript: Warts and workarounds · HackerTrans