Weakly sensitive analysis for JavaScript object-manipulating programs

Cited 5 time in webofscience Cited 7 time in scopus
  • Hit : 572
  • Download : 0
DC FieldValueLanguage
dc.contributor.authorKo, Yoon Seokko
dc.contributor.authorRival, Xavierko
dc.contributor.authorRyu, Sukyoungko
dc.date.accessioned2019-04-24T13:12:16Z-
dc.date.available2019-04-24T13:12:16Z-
dc.date.created2019-04-22-
dc.date.issued2019-05-
dc.identifier.citationSOFTWARE-PRACTICE & EXPERIENCE, v.49, no.5, pp.840 - 884-
dc.identifier.issn0038-0644-
dc.identifier.urihttp://hdl.handle.net/10203/261466-
dc.description.abstractWhile JavaScript programs have become pervasive in web applications, they remain hard to reason about. In this context, most static analyses for JavaScript programs require precise call graph information, since the presence of large numbers of spurious callees significantly deteriorates precision. One of the most challenging JavaScript features that complicate the inference of precise static call graph information is read/write accesses to object fields, the names of which are computed at runtime. JavaScript framework libraries often exploit this facility to build objects from other objects, as a way to simulate sophisticated high-level programming constructions. Such code patterns are difficult to analyze precisely, due to weak updates and limitations of unrolling techniques. In this paper, we observe that precise field origination relations can be inferred by locally reasoning about object copies, both regarding to the object and to the program structure, and we propose an abstraction that allows to separately reason about field read/write access patterns working on different fields and to carefully handle the sets of JavaScript object fields. We formalize and implement an analysis based on this technique. We evaluate the performance and precision of the analysis on the computation of call graph information for examples from jQuery tutorials.-
dc.languageEnglish-
dc.publisherWILEY-
dc.titleWeakly sensitive analysis for JavaScript object-manipulating programs-
dc.typeArticle-
dc.identifier.wosid000463035200006-
dc.identifier.scopusid2-s2.0-85059633442-
dc.type.rimsART-
dc.citation.volume49-
dc.citation.issue5-
dc.citation.beginningpage840-
dc.citation.endingpage884-
dc.citation.publicationnameSOFTWARE-PRACTICE & EXPERIENCE-
dc.identifier.doi10.1002/spe.2676-
dc.contributor.localauthorRyu, Sukyoung-
dc.contributor.nonIdAuthorRival, Xavier-
dc.description.isOpenAccessN-
dc.type.journalArticleArticle-
dc.subject.keywordAuthorabstract interpretation-
dc.subject.keywordAuthorJavaScript-
dc.subject.keywordAuthorobject abstraction-
dc.subject.keywordAuthorstatic analysis-
dc.subject.keywordAuthorstring abstraction-
dc.subject.keywordAuthortrace partitioning abstraction-
Appears in Collection
CS-Journal Papers(저널논문)
Files in This Item
There are no files associated with this item.
This item is cited by other documents in WoS
⊙ Detail Information in WoSⓡ Click to see webofscience_button
⊙ Cited 5 items in WoS Click to see citing articles in records_button

qr_code

  • mendeley

    citeulike


rss_1.0 rss_2.0 atom_1.0