Question: The project for this term is the implement the following project in language: Java Interpreter Project This project will be to write an interpreter for

The project for this term is the implement the following project in language: Java

Interpreter Project

This project will be to write an interpreter for a minimal form of Julia. This minimal form of Julia has only 1 data type, integer, and the only identifiers are single letters.

The interpreter will parse a Julia program and build some intermediate data structures. These data structures will then be interpreted to execute the program. All tokens in this language are separated by white space. The parsing algorithm should detect any syntactical or semantic error. The first such error discovered should cause an appropriate error message to be printed, and then the interpreter should terminate. Run-time errors should also be detected with appropriate error messages being printed.

Grammar for the language

Parser

function id ( ) end

|

| | | |

if else end

while end

-> id

-> for id = end

print ( )

:

le_operator | lt_operator | ge_operator | gt_operator | eq_operator | ne_operator

| |

add_operator | sub_operator | mul_operator | div_operator | mod_operator | exp_operator | rev_div_operator

Lexical Analyzer

id letter

literal_integer digit literal_integer | digit

assignment_operator =

le_operator <=

lt_operator <

ge_operator >=

gt_operator >

eq_operator = =

ne_operator !=

add_operator +

sub_operator -

mul_operator *

div_operator /

mod_operator %

rev_div_operator \

exp_operator ^

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!