Answered step by step
Verified Expert Solution
Link Copied!
Question
1 Approved Answer

Objective: Learn programming language implementation systems. Practice conduction syntax analysis on given program components. Assignment: Language implementation systems must input a file, identify substrings, and

Objective: Learn programming language implementation systems. Practice conduction syntax analysis on given program components.

Assignment: Language implementation systems must input a file, identify substrings, and find all syntax errors, regardless of the specific implementation approach. For an input program a lexical analyzer will break a file into lexemes and tokens. A parser will find all syntax errors. For each error the parser will produce an appropriate diagnostic message, and recover quickly.

For the Simple Function defined as follows, choose a programming language that you are familiar with, to implement a lexical analyzer and a top-down parser. The lexical analyzer will read the test program and generate lexemes with token types. The parser must use the recursive-descending parsing algorithm to implement the syntax analysis. The project must implement the following functions:

Input the test program.

Use the Lexical Analyzer to generate lexemes and tokens, and display them.

Use the recursive-descending parser to check the syntax of the test program.

If the test program is generated by the Simple Function display The test program is correct, otherwise display The test program cannot be generated by the Simple function and identify the syntax error.

Requirements:

This is a two person team project.

You should use department programming standards.

The program must execute correctly.

EBNF grammar for Simple Function:

-> () { }

-> ;

| ;

-> ;

| ;

-> =

-> {*|/}

|

| ()

-> int

-> a | b | z |

First test program

int test (){

int a;

int b;

int c;

int data;

data = a * b / c;

}

Second test program

int mul (int a, int c ) {

a = a * c;

}

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image
Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image_2

Step: 3

blur-text-image_3

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Making Databases Work The Pragmatic Wisdom Of Michael Stonebraker

Authors: Michael L. Brodie

1st Edition

1947487167, 978-1947487161

More Books

Students explore these related Databases questions