私はPythonとPLYを使用してLISPのようなS式を解析していますが、関数呼び出しを解析するときは、0個以上の引数が存在する可能性があります。これをyaccコードに入れるにはどうすればよいですか。これはこれまでの私の機能です:
def p_EXPR(p):
'''EXPR : NUMBER
| STRING
| LPAREN funcname [EXPR] RPAREN'''
if len(p) == 2:
p[0] = p[1]
else:
p[0] = ("Call", p[2], p[3:-1])
「[EXPR]」を0個以上のEXPRを許可するものに置き換える必要があります。これどうやってするの?