updated grammar, test cases, sample programs

now can handle the list of type [a, b, c]