Izvajanje vmesne kode

Vstavite linearizator vmesne kode v prevajalnik za programski jezik PINS. Preverite, da linearizator kode iz predloge ustreza vaši generirani vmesni kodi, s prilozenim interpreterjem pa preverite, da linearizirana koda pravilno deluje.

Trenutno interpreter pozna naslednje funkcije:
fun putInt(i:int):void
fun getInt(i:^int):void
fun putString(s:string):void
fun getString(s:^string):void
Pri tem ^int in ^string pomeni kazalec na ustrezni tip, torej prenos naslova.  Tega v PINSu ni mogoče, zato te funkcije, za vpis in izpis celega števila in niza znakov ustrezno spremenite (tako v prevajalniku kot v interpreterju).
Interpreter naj deluje tako, da kliče funkcijo
fun main(i:integer):integer
z vrednostjo agumenta i=0.  Če te funkcije ni, naj javi napako.

Rešitev 8. domače naloge oddajte kot arhiv 63xxxxxx-08.zip (kjer je 63xxxxxx vaša vpisna številka) - rešitve dosedanjih domačih nalog so del rešitve 8. domače naloge. V tem arhivu naj bo struktura direktorijev natančno enaka strukturi direktorijev v arhivu s predlogo domače naloge (z dodanimi rešitvami dosedanjih domačih nalog).