pattern matching
- To: mathgroup at yoda.physics.unc.edu (Mathematica mailing list)
- Subject: pattern matching
- From: nachbar at merck.com
- Date: Thu, 22 Jul 1993 08:31:29 -0500 (EDT)
hi, i trying to write a function that has a calling sequence similar to FindMinimum[expr, {x,x0},{y,y0},..., opt1->val1,opt2->val2,...] where at least {x,x0} must be included and none of the options are required. so i tried: In[1]:= MyFunc[data_, k:{_,_}.., opts:Rule[_,_]...]:= Module[{}, Print[data] ; Print[{k}] ; Print[{opts}] ] In[2]:= MyFunc[{{1,2,3},{4,5,6},{7,8,9}}, {5,4},{5,3},{6,5},{6,4}] Out[2]= MyFunc[{{1, 2, 3}, {4, 5, 6}, {7, 8, 9}}, {5, 4}, {5, 3}, {6, 5}, > {6, 4}] In[3]:= MyFunc[{{1,2,3},{4,5,6},{7,8,9}}, {5,4},{5,3},{6,5},{6,4}, Weighting->True] {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}} {{5, 4}, {5, 3}, {6, 5}, {6, 4}} {Weighting -> True} In[4]:= as you can see, it only works when options are included. any ideas of what i've missed?\ bob -- Dr. Robert B. Nachbar | Merck Research Laboratories | 908/594-7795 nachbar at merck.com | R50S-100 | 908/594-4224 FAX | PO Box 2000 | | Rahway, NJ 07065 |