Capital letters are non-terminals, epsilon is empty Remove left recursions in the grammar: A -> AaB:C; | epsilon B -> b | B,b C -> c | d ____ Abstracted from problem: DECLS -> DECLS var ID_LIST : TYPE ; | epsilon ID_LIST -> id | ID_LIST , id TYPE -> int | real