Computer Science: 1129096

Project discussion

The main aim of this project to be implementing on the syntactic analyzer on the existing grammar implementation on windows 10/Cygwin environment using c programming language. The analysing on eliminate grammar they can implementing on the nonterminal denoted as the red symbols, terminals they can denoted as the blue symbols, black punctuation is denoted as EBNF symbols on the variable list of function they can executed (Park, 2017). The function symbol they can used for the different expression, operators, and binary operators, on the type value they can denoted as the integer, real, Boolean operation on the variable parameters. The parser syntactic analyzer on the variable declaration they can used for detect the error message and then process of recover on the syntax error production on synchronization will be investigated.

Test plan of compiler program 

To test our compiler, we should now utilize test programs that contain work calls. Attempt a wide range of calls. Test contentions that are ints, copies, numbers, and articulations. Test capacities with no parameter, one parameter, and a few parameters. Additionally use contentions that are themselves work calls (LEXICAL COLLOCATION ANALYSIS, 2019). We will actualize the administrators in an intelligent request that enables us to test our work as we come. The print and peruse explanations have just been executed to encourage the testing of different articulations. In this way, we can start testing right presently so as to gain proficiency with the test technique and to check whether our tasks work up until now. The test operating they can used for the multiple operator, relational operators ,binary logical operator, unary logical operator highest precedence, arithmetic operator, integer expressions, floating-point expressions (Park, 2017), and all kinds of mixed mode expressions on the highest precedence. When your compiler is fixed, you may remark out those print proclamations once more. Utilize a test program that contains work definitions, syntactic analyzer to distinguish and recuperate from extra language structure mistakes utilizing the semicolon as the synchronization token on the variable assertion.

Project improvement 

Now let us test our program’s ability to detect syntax errors. Run the program and enter the line

For example,

$ 123 ++ 456

What error was detected? Can you see why?

$ 123 456

The problem is that when the program quits and detecting the synchrozation error correctly parse any syntactically correct program without any problem, the last token received from the lexer should be EBNF (Cifuentes Honrubia and Rodríguez Rosique, 2011). The parser they can contains the different function statement on first and last line message of the return variable types. Otherwise, the lexer was not at the end of the expression. However, the program does not check that this was the case. It simply quits after the production for E has been satisfied. Correct this by requiring that after satisfying the production for E, the token be EBNF in order for the parser to report that the input was accepted.

Reference 

Cifuentes Honrubia, J. and Rodríguez Rosique, S. (2011). Spanish word formation and lexical creation. Amsterdam: John Benjamins Pub. Co.

LEXICAL COLLOCATION ANALYSIS. (2019). [S.l.]: SPRINGER.

Park, J. (2017). Syntactic complexity as a predictor of second language writing proficiency and writing quality.