Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

1. Define context-free grammars a. (5 points) Write BNF/EBNF description for a Java class definition header statement. Examples of class definition header: class MyClass abstract

1. Define context-free grammars

a. (5 points) Write BNF/EBNF description for a Java class definition header statement. Examples of class definition header:

class MyClass

abstract class MyClass

final class MyClass extends Thread

public class MyClass implements Runnable

Solution for a:

b. (5 points) Write BNF/EBNF description for a C switch statement. A pseudo code example for such a statement is below:

switch (x) {

case 1: statement1;

case x: statementx;

default: statement0;

}

Hints: You can use non-terminal symbols such as for expression; for a list of statements and for values without defining them.

Solution for b:

c. (5 points) Matching syntactic entities (e.g., parentheses, brackets, or braces) is an important aspect of many programming languages. Define a context-free grammar in BNF capable of generating only balanced strings of (nested or flat) matched parentheses. The empty string is not in this language.

For instance, the strings (), ()(), (()), (()())(), and ((()())()) are sentences in this language, while the strings )(, )(), )()(, (()(), ())((, and ((()()) are not. Note that not all strings with the same number of open and close parentheses are in this language (e.g., the strings )( and )()( are not sentences in this language).

Solution for 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

Step: 3

blur-text-image

Ace Your Homework with AI

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

Get Started

Students also viewed these Databases questions