Abstract
The Smart Cross Platform is a virtual machine based solution that supports various programming languages and platforms, and its aims are to support programming languages like ISO/TEC C++, Java and Objective C and smartphone platforms such as Android and iOS. Java Script is a programming language to develop HTML5 contents, and the contents are executed by interpreter which included in web browser unlike compilation based programming and execution methods. In this paper, we will introduce the symbol table for the JavaScript compiler and its verification. The symbol table is a data structure to keep track of scope and binding information about names (or identifiers). Various information is entered into the symbol table after visiting and analyzing the abstract syntax tree generated by syntax-directed translation, and then is used to check whether the use of names is consistent with their definition during the semantic analysis phase and generate a valid code during the code generation phase. Proposed reverse translator reconstructs inputted JavaScript declarations by using information of the symbol table entered in the declaration process phase of the JavaScript compiler, and therefore we can verify completeness of symbol table design and correctness of information entered in the symbol table. In addition, this system also produces debug information, and so is effectively utilized for the development of the JavaScript compiler.
Original language | English |
---|---|
Pages (from-to) | 3259-3266 |
Number of pages | 8 |
Journal | Information (Japan) |
Volume | 20 |
Issue number | 5 |
State | Published - May 2017 |
Keywords
- Compiler construction
- Ecma script
- JavaScript compiler
- Reverse translator
- Smart Cross Platform
- Symbol table verification
- Virtual machine