A framework that adds type checking and synchronous programming support to JavaScript