Question: applyrule and hypergeom

1. This seems wrong:

applyrule(x::symbol+y::symbol = 0, a+b);
                             a + b

2. Should these two match f(a)?

applyrule((h::anything)(a) = 0, f(a));
                              f(a)
applyrule(x::f(x1::anything) = 0, f(a));
                              f(a)

3. hypergeom will give an error if the arguments are not lists, so how to write a pattern that will match hypergeom(anything, anything, a)? This works but is... skittish:

applyrule('''hypergeom'''(x1::anything, x2::anything, a) = 0, hypergeom([], [], a));
                               0
Please Wait...