Re: Defining a function P[A_ | B_]:=f[A,B] overriding Alternatives
- To: mathgroup at smc.vnet.net
- Subject: [mg19287] Re: Defining a function P[A_ | B_]:=f[A,B] overriding Alternatives
- From: Eckhard Hennig <hennig at itwm.uni-kl.de>
- Date: Sat, 14 Aug 1999 01:45:13 -0400
- Organization: ITWM
- References: <7oojvg$i35@smc.vnet.net> <7or3jp$o6@smc.vnet.net> <7ouvht$osf$1@dragonfly.wolfram.com>
- Sender: owner-wri-mathgroup at wolfram.com
Allan Hayes schrieb in Nachricht <7ouvht$osf$1 at dragonfly.wolfram.com>... >Eckhard: >Following your idea n the posting below: > >p[HoldPattern[Alternatives][A_ , B_]] := {A, B} > >DownValues[p] > >{HoldPattern[p[HoldPattern[Alternatives][A_, B_]]] :> {A, B}} > >p[a | b] > >{a, b} > >Allan Of course, that's the straightforward way to do this. However, the originator of this thread (Peltio) wrote the following: >And yet I wanted to be able to define my function without showing the >Alternatives /: part. Therefore, I suppose that Peltio's intention was to be able to define p[A_ | B_] without any explicit manipulation of the behavior of Alternatives. This can only be achieved by rewriting the DownValues of p. -- Eckhard ----------------------------------------------------------- Dipl.-Ing. Eckhard Hennig mailto:hennig at itwm.uni-kl.de Institut fuer Techno- und Wirtschaftsmathematik e.V. (ITWM) Erwin-Schroedinger-Strasse, 67663 Kaiserslautern, Germany Voice: +49-(0)631-205-3126 Fax: +49-(0)631-205-4139 http://www.itwm.uni-kl.de/as/employees/hennig.html ITWM - Makers of Analog Insydes for Mathematica http://www.itwm.uni-kl.de/as/products/ai -----------------------------------------------------------