DESIGN OF A TRAINING COMPILER FOR INCREASING THE EFFICIENCY OF LANGUAGE PROCESSORS LEARNING

Gorde:
Xehetasun bibliografikoak
Argitaratua izan da:The International Scientific Conference eLearning and Software for Education vol. 2 (2021), p. 29
Egile nagusia: Dimitrov, Dimitar
Beste egile batzuk: Penev, Ivaylo, PhD
Argitaratua:
"Carol I" National Defence University
Gaiak:
Sarrera elektronikoa:Citation/Abstract
Full Text
Full Text - PDF
Etiketak: Etiketa erantsi
Etiketarik gabe, Izan zaitez lehena erregistro honi etiketa jartzen!

MARC

LEADER 00000nab a2200000uu 4500
001 2641603531
003 UK-CbPIL
024 7 |a 10.12753/2066-026X-21-077  |2 doi 
035 |a 2641603531 
045 2 |b d20210101  |b d20211231 
084 |a 185028  |2 nlm 
100 1 |a Dimitrov, Dimitar 
245 1 |a DESIGN OF A TRAINING COMPILER FOR INCREASING THE EFFICIENCY OF LANGUAGE PROCESSORS LEARNING 
260 |b "Carol I" National Defence University  |c 2021 
513 |a Conference Proceedings 
520 3 |a The paper presents the design of a training compiler which is developed for the purposes of education in compilers and language processors in computer science courses. The presented compiler has the following main advantages compared to known training compilers used in various universities - a simplified modular structure and the building of an explicit abstract syntactic tree of the input program. The modules in the compiler structure are lexical analyzer, syntactic analyzer, semantic analyzer and code generator. This separation allows students to effectively study the main stages of compilation - lexical analysis, parsing, semantic analysis and code generation. Building and visualizing an explicit abstract syntax tree helps students to understand the translation of the program into the compiler's front-end and make the transition to the compiler's back-end. The compiler translates a program written in a high-level language into virtual machine code. An interpreter to execute the generated virtual machine code is also presented. The presented design is compared to other known training compilers used in various university courses. The input language is procedure-oriented and is a subset of the C and Java languages, which makes it easier for students to use it. Language has enough resources to solve many practical problems. The input program for the compiler is a sequence of definitions of variables and functions. The language of the training compiler is strongly typed. Variables, constants and expressions are related to a specific type. Input-output operations require a certain type of arguments, arithmetic-logical operations are defined for specific types of arguments and type of returned result. At the end of the paper are presented the results of the work of the training compiler in translating a sample input program to code for a virtual machine. The results demonstrate the output of each compiler module - a token stream, an abstract syntax tree, and a set of virtual machine instructions. The structure of the presented training compiler can be used for different input languages in training on compilers and language processors. 
653 |a Language 
653 |a Students 
653 |a Computer science 
653 |a Syntax 
653 |a Languages 
653 |a High level languages 
653 |a Modules 
653 |a Core curriculum 
653 |a Interpreters 
653 |a Colleges & universities 
653 |a Training 
653 |a Translating 
653 |a Programming languages 
653 |a Semantics 
653 |a Lexical analysers 
653 |a Building codes 
653 |a PASCAL 
653 |a Semantic analysis 
653 |a Design 
653 |a Compilers 
653 |a Processors 
653 |a Algorithms 
653 |a Modular structures 
653 |a Education 
653 |a Virtual environments 
653 |a Teaching Methods 
653 |a Learning Processes 
653 |a Science Curriculum 
700 1 |a Penev, Ivaylo, PhD 
773 0 |t The International Scientific Conference eLearning and Software for Education  |g vol. 2 (2021), p. 29 
786 0 |d ProQuest  |t Education Database 
856 4 1 |3 Citation/Abstract  |u https://www.proquest.com/docview/2641603531/abstract/embedded/6A8EOT78XXH2IG52?source=fedsrch 
856 4 0 |3 Full Text  |u https://www.proquest.com/docview/2641603531/fulltext/embedded/6A8EOT78XXH2IG52?source=fedsrch 
856 4 0 |3 Full Text - PDF  |u https://www.proquest.com/docview/2641603531/fulltextPDF/embedded/6A8EOT78XXH2IG52?source=fedsrch