Collecting Type Information Using Unit Tests for Customizing Java']JavaScript Virtual Machines

被引:0
|
作者
Ugawa, Tomoharu [1 ]
Iwasaki, Hideya [2 ]
Kataoka, Takafumi [1 ]
机构
[1] Kochi Univ Technol, Kami, Kochi, Japan
[2] Univ Electrocommun, Chofu, Tokyo, Japan
关键词
virtual machine; !text type='Java']Java[!/text]Script; embedded systems; type;
D O I
10.1145/3340670.3342425
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
To use JavaScript for Internet of Things (IoT), it is essential to reduce the size of the virtual machine (VM). Although operators in JavaScript are polymorphic, many applications apply operators to only a limited set of datatypes. Thus, customizing a VM to include only implementations of operators of datatypes used can reduce the size of the VM. In this research, we determine the set of operand datatypes that are possibly given to each operator for individual applications. Because JavaScript is a dynamically typed programming language, it is difficult to infer types accurately. Instead, as a practical approach, we obtain type information from executions of unit tests of the application. We implemented a prototype system to record datatypes that are given to each operator in executions of unit tests for Jasmine. The system does not record operands of operators executed by the Jasmine's code but only those by the application's code. We applied this system to two small applications and found that it determined type information with high accuracy.
引用
收藏
页数:4
相关论文
共 36 条
  • [1] Customizing javascript virtual machines for specific applications and execution environments
    Onozawa, Hiro
    Iwasaki, Hideya
    Ugawa, Tomoharu
    [J]. Computer Software, 2021, 38 (03) : 23 - 40
  • [2] A Framework for Constructing Java']JavaScript Virtual Machines with Customized Datatype Representations
    Kataoka, Takafumi
    Ugawa, Tomoharu
    Iwasaki, Hideya
    [J]. 33RD ANNUAL ACM SYMPOSIUM ON APPLIED COMPUTING, 2018, : 1238 - 1247
  • [3] IntelliGame in Action: An Experience Report on Gamifying Java']JavaScript Unit Tests
    Straubinger, Philipp
    Fulcini, Tommaso
    Fraser, Gordon
    Torchiano, Marco
    [J]. PROCEEDINGS OF THE 2024 FIRST IDE WORKSHOP, IDE 2024, 2024, : 110 - 114
  • [4] eJS']JSTK: Building Java']JavaScript virtual machines with customized datatypes for embedded systems
    Ugawa, Tomoharu
    Iwasaki, Hideya
    Kataoka, Takafumi
    [J]. JOURNAL OF COMPUTER LANGUAGES, 2019, 51 : 261 - 279
  • [5] Building interactive virtual environments for simulated training in medicine using VRML and Java']Java/Java']JavaScript
    Korosec, D
    Holobar, A
    Divjak, M
    Zazula, D
    [J]. COMPUTER METHODS AND PROGRAMS IN BIOMEDICINE, 2005, 80 : S61 - S70
  • [6] Using Java']Java and Java']JavaScript in the Virtual Programming Laboratory: A Web-based parallel programming environment
    Dincer, K
    Fox, GC
    [J]. CONCURRENCY-PRACTICE AND EXPERIENCE, 1997, 9 (06): : 485 - 508
  • [7] Generating Automatic Unit Tests of Java']JavaScript Code from UML Class and Activity Diagrams
    Malanowska, Agnieszka
    Malkiewicz-Blotniak, Adrianna
    [J]. ENASE: PROCEEDINGS OF THE 16TH INTERNATIONAL CONFERENCE ON EVALUATION OF NOVEL APPROACHES TO SOFTWARE ENGINEERING, 2021, : 189 - 196
  • [8] Detection and Mitigation Of Malicious Java']JavaScript Using Information Flow Control
    Sayed, Bassam
    Traore, Issa
    Abdelhalim, Amany
    [J]. 2014 TWELFTH ANNUAL INTERNATIONAL CONFERENCE ON PRIVACY, SECURITY AND TRUST (PST), 2014, : 264 - 273
  • [9] Geological and geophysical modeling on virtual globes using KML, COLLADA, and Java']Javascript
    De Paor, Declan G.
    Whitmeyer, Steven J.
    [J]. COMPUTERS & GEOSCIENCES, 2011, 37 (01) : 100 - 110
  • [10] Virtual manufacturing information system using JAVA']JAVA™ and JDBC™
    Pradhan, SS
    Huang, WV
    [J]. COMPUTERS & INDUSTRIAL ENGINEERING, 1998, 35 (1-2) : 255 - 258