{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,6,3]],"date-time":"2025-06-03T19:26:58Z","timestamp":1748978818391},"reference-count":0,"publisher":"EasyChair","content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"abstract":"<jats:p>JavaScript programs have access to a wide range of resources and many of those have security implications.<\/jats:p><jats:p>Tight bounds on the consumption of those resources can give indication of the functionality provided by the<\/jats:p><jats:p>program and minimize the security risks of mobile applications. Resource consumption is typically dependent<\/jats:p><jats:p>on the input of the user.<\/jats:p><jats:p>In this paper we introduce an amortized type system for a core of JavaScript. The resulting types certify<\/jats:p><jats:p>bounds for the resource usage dependent on the input parameters. We define the amortized types and the<\/jats:p><jats:p>corresponding typing rules. Furthermore we discuss how to fully automatically infer those resource bounds for<\/jats:p><jats:p>arbitrary applications. In addition to the usual example of amortized resource, heap-space, our type system<\/jats:p><jats:p>can be applied to many phone specific resources, which we demonstrate using the example of the GPS sensor<\/jats:p><jats:p>and others.<\/jats:p><jats:p>The main result of this paper is the soundness of the core type system, proving that a valid type for a program<\/jats:p><jats:p>corresponds to a bound on the units used of the specified resource.<\/jats:p>","DOI":"10.29007\/v2f2","type":"proceedings-article","created":{"date-parts":[[2018,1,23]],"date-time":"2018-01-23T18:03:02Z","timestamp":1516730582000},"page":"12--4","source":"Crossref","is-referenced-by-count":1,"title":["Towards an amortized type system for JavaScript"],"prefix":"10.29007","volume":"30","author":[{"given":"Daniel","family":"Franzen","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"David","family":"Aspinall","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"11545","event":{"name":"SCSS 2014. 6th International Symposium on Symbolic Computation in Software Science"},"container-title":["EPiC Series in Computing"],"original-title":[],"deposited":{"date-parts":[[2018,1,23]],"date-time":"2018-01-23T18:03:05Z","timestamp":1516730585000},"score":1,"resource":{"primary":{"URL":"https:\/\/easychair.org\/publications\/paper\/DLWj"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[null]]},"references-count":0,"URL":"https:\/\/doi.org\/10.29007\/v2f2","relation":{},"ISSN":["2398-7340"],"issn-type":[{"type":"print","value":"2398-7340"}],"subject":[]}}