Revisiting recency abstraction for JavaScript: Towards an intuitive, compositional, and efficient heap abstraction

Cited 0 time in webofscience Cited 4 time in scopus
  • Hit : 129
  • Download : 0
DC FieldValueLanguage
dc.contributor.authorPark, Jihyeokko
dc.contributor.authorRival, Xavierko
dc.contributor.authorRyu, Sukyoungko
dc.date.accessioned2020-03-19T03:34:27Z-
dc.date.available2020-03-19T03:34:27Z-
dc.date.created2019-12-18-
dc.date.issued2017-06-18-
dc.identifier.citation6th ACM SIGPLAN International Workshop on State of the Art in Program Analysis, SOAP 2017, pp.1 - 6-
dc.identifier.urihttp://hdl.handle.net/10203/272969-
dc.description.abstractJavaScript is one of the most widely used programming languages. To understand the behaviors of JavaScript programs and to detect possible errors in them, researchers have developed several static analyzers based on the abstract interpretation framework. However, JavaScript provides various language features that are difficult to analyze statically and precisely such as dynamic addition and removal of object properties, first-class property names, and higher-order functions. To alleviate the problem, JavaScript static analyzers often use recency abstraction, which refines address abstraction by distinguishing recent objects from summaries of old objects. We observed that while recency abstraction enables more precise analysis results by allowing strong updates on recent objects, it is not monotone in the sense that it does not preserve the precision relationship between the underlying address abstraction techniques: for an address abstraction A and a more precise abstraction B, recency abstraction on B may not be more precise than recency abstraction on A. Such an unintuitive semantics of recency abstraction makes its composition with various analysis sensitivity techniques also unintuitive. In this paper, we propose a new singleton abstraction technique, which distinguishes singleton objects to allow strong updates on them without changing a given address abstraction. We formally define recency and singleton abstractions, and explain the unintuitive behaviors of recency abstraction. Our preliminary experiments show promising results for singleton abstraction.-
dc.languageEnglish-
dc.publisherAssociation for Computing Machinery, Inc-
dc.titleRevisiting recency abstraction for JavaScript: Towards an intuitive, compositional, and efficient heap abstraction-
dc.typeConference-
dc.type.rimsCONF-
dc.citation.beginningpage1-
dc.citation.endingpage6-
dc.citation.publicationname6th ACM SIGPLAN International Workshop on State of the Art in Program Analysis, SOAP 2017-
dc.identifier.conferencecountrySP-
dc.identifier.doi10.1145/3088515.3088516-
dc.contributor.localauthorRyu, Sukyoung-
dc.contributor.nonIdAuthorPark, Jihyeok-
dc.contributor.nonIdAuthorRival, Xavier-
Appears in Collection
CS-Conference Papers(학술회의논문)
Files in This Item
There are no files associated with this item.

qr_code

  • mendeley

    citeulike


rss_1.0 rss_2.0 atom_1.0