Question: 2. This question is about code generation. The first two parts make reference to the following program fragment in a Java-like language: class MyInt {

 2. This question is about code generation. The first two partsmake reference to the following program fragment in a Java-like language: class

2. This question is about code generation. The first two parts make reference to the following program fragment in a Java-like language: class MyInt { private int n; public MyInt (int j) { n=j; } public int f (int x) { n=n+1; return n*x; } public MyInt g (int x) { int j = x+n; My Int r = new MyInt (); return r; } } (b) Explain how the compilation of methods and method invocation in object-oriented languages, can be reduced to the compilation of procedures and procedure calls. Your answer should suppose an approach involving method tables. i. Write pseudocode representing how MyInt: :f would be realised as a procedure, and how an invocation a.f(x) would be realised as a procedure invocation for an object a of class MyInt. [6 marks] ii. Explain briefly how method bodies are stored in memory, and how these memory locations may be found at run-time in a method invocation. [10 marks] iii. Explain briefly what advantage there is to perform such a conversion, e.g., in a compiler accepting multiple source languages. [6 marks]

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!