|
Hi,
I have created a Symbol Table class following the given API.
The next question that I am facing is if there are two passes required through the Jack file to do this project?
1- first to populate the symbol table with information about all the given identifiers and then
2-making a 2nd pass through jack file, generating code referring to information in symbol tables. But I am not sure how to handle subroutine scope in this case as the book says that we should have only one symbol table for the subroutines at a time. So if I create a S.T for one subroutine and then when the next subroutine starts what to do with the first table.
How are these two tasks of populating the symbol table and generating xml/vm code related? Are they done one after another with a kind of finish-to-start relationship or are they done simultaneously?
Thanks for any replies that clears this up.
|