Added separate implementation of Symbol table and semantic checking for discussion