try implementing lua grammar