CMSC 430 UDC Modifying Interpreter For Programs to The Complete Language Proejct
Im stuck on a C Programming question and need an explanation.
this project involves modifying the attached interpreter so that it interprets programs for thecomplete language.You may convert all values to double values, although you can maintain their individual types ifyou wish.When the program is run on the command line, the parameters to the function should be suppliedas command line arguments. For example, for the following function header of a program in thefile text.txt:function main a: integer, b: integer returns integer;One would execute the program as follows:$ ./compile < test.txt 2 4In this case, the parameter a would be initialized to 2 and the parameter b to 4.An example of a program execution is shown below:$ ./compile < test.txt 2 41 function main a: integer, b: integer returns integer;2 c: integer is3 if a > b then4 a rem b;5 else6 a ** 2;7 endif;8 begin9 case a is10 when 1 => c;11 when 2 => (a + b / 2 – 4) * 3;12 others => 4;13 endcase;14 end;Compiled SuccessfullyResult = 0After the compilation listing is output, the value of the expression which comprises the body ofthe function should be displayed as shown above.The existing code evaluates some of the arithmetic, relational and logical operators together withthe reduction statement and integer literals only. You are to add the necessary code to include allof the following:? Real and Boolean literals? All additional arithmetic operators? All additional relational and logical operators? Both if and case statements? Functions with multiple variables? Functions with parametersThis project requires modification to the bison input file, so that it defines the additional thenecessary computations for the above added features. You will need to add functions to thelibrary of evaluation functions already provided in values.cc. You must also make somemodifications to the functions already provided.You are to submit two files.1. The first is a .zip file that contains all the source code for the project. The .zip fileshould contain the flex input file, which should be a .l file, the bison file, which shouldbe a .y file, all .cc and .h files and a makefile that builds the project.2. The second is a Word document (PDF or RTF is also acceptable) that contains thedocumentation for the project, which should include the following:a. A discussion of how you approached the projectb. A test plan that includes test cases that you have created indicating what aspectsof the program each one is testing and a screen shot of your compiler run on thattest casec. A discussion of lessons learned from the project and any improvements that couldbe made.
Have a similar assignment? "Place an order for your assignment and have exceptional work written by our team of experts, guaranteeing you A results."