The examples I've seen always use the "simple" BNF. Here's an example of a part of my silly development:
def p_expression(p):
"""expression : NUMBER
| NAME
| NEGATION
| INCREMENT
| DECREMENT
| expression operator expression"""
if __name__ == "__main__":
lex.lex()
yacc.yacc()
data = "32 <+> 10 |"
result = yacc.parse(data)
What if I want to parse a math expression with parenthesis and the whole recursive hell of it just like in this answer that uses the extended one? Is it possible?