like C language parser+type_checker+interpreter in Python using PLY