MoMIT: Porting a JavaScript Interpreter on a Quarter Coin. Morales, R., Saborido, R., & Gu�h�neuc, Y. Transactions on Software Engineering (TSE), 47(12):2771–2785, IEEE CS Press, January, 2020. 15 pages.
MoMIT: Porting a JavaScript Interpreter on a Quarter Coin [pdf]Paper  abstract   bibtex   6 downloads  
The Internet of Things (IoT) is a network of physical, connected devices providing services through private networks and the Internet. The devices connect through the Internet to Web servers and other devices. One of the popular programming languages for communicating Web pages and Web apps is JavaScript (JS). Hence, the devices would benefit from JS apps. However, porting JS apps to the many IoT devices, e.g., System-on-a-Chip (SoCs) devices (e.g., Arduino Uno), is challenging because of their limited memory, storage, and CPU capabilities. Also, some devices may lack hardware/software capabilities for running JS apps "as is". Thus, we propose MoMIT, a multiobjective optimization approach to miniaturize JS apps to run on IoT devices. We implement MoMIT using three different search algorithms. We miniaturize a JS interpreter and measure the characteristics of 23 apps before/after applying MoMIT. We find reductions of code size, memory usage, and CPU time of 31%, 56%, and 36%, respectively (medians). We show that MoMIT allows apps to run on up to two additional devices in comparison to the original JS interpreter.

Downloads: 6