Annotation of OpenXM_contrib/pari-2.2/src/gp/whatnow.c, Revision 1.2
1.2 ! noro 1: /* $Id: whatnow.c,v 1.8 2002/04/24 18:39:42 karim Exp $
1.1 noro 2:
3: Copyright (C) 2000 The PARI group.
4:
5: This file is part of the PARI/GP package.
6:
7: PARI/GP is free software; you can redistribute it and/or modify it under the
8: terms of the GNU General Public License as published by the Free Software
9: Foundation. It is distributed in the hope that it will be useful, but WITHOUT
10: ANY WARRANTY WHATSOEVER.
11:
12: Check the License for details. You should have received a copy of it, along
13: with the package; see the file 'COPYING'. If not, write to the Free Software
14: Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
15:
16: #include "pari.h"
17: #include "../language/anal.h"
18:
19: typedef struct whatnow_t
20: {
21: char *name, *oldarg, *newarg;
22: } whatnow_t;
23:
24: #define SAME NULL
25: #define REMOV (char *)1L
26: #define _REMOV {REMOV,NULL,NULL}
27: #define _SAME {SAME,NULL,NULL}
28:
29: /* generated by PERL script ../util/dico */
30: static const whatnow_t whatnowlist[]={
31: _SAME,
32: _SAME,
33: _SAME,
34: _SAME,
35: {"elladd","(e,z1,z2)","(e,z1,z2)"},
36: _SAME,
37: {"matadjoint","(x)","(x)"},
38: _SAME,
39: {"ellak","(e,n)","(e,n)"},
40: _SAME,
41: {"algdep","(x,n,dec)","(x,n,dec)"},
42: {"nfalgtobasis","(nf,x)","(nf,x)"},
43: {"ellan","(e,n)","(e,n)"},
44: {"ellap","(e,n)","(e,n)"},
45: {"ellap","(e,n)","(e,n,1)"},
46: {"padicappr","(x,a)","(x,a)"},
47: _SAME,
48: _SAME,
49: _SAME,
50: {"matcompanion","(x)","(x)"},
51: _SAME,
52: _SAME,
53: {"nfbasis","(x)","(x)"},
54: {"nfbasis","(x)","(x,2)"},
55: {"nfbasistoalg","(nf,x)","(nf,x)"},
56: _SAME,
57: _SAME,
58: _SAME,
59: _SAME,
60: _SAME,
61: _SAME,
62: {"ellbil","(e,z1,z2)","(e,z1,z2)"},
63: {"binomial","(x,y)","(x,y)"},
64: _SAME,
65: _SAME,
66: {"contfrac","(x,lmax)","(x,,lmax)"},
67: {"factor","(x,lim)","(x,lim)"},
68: {"bnfcertify","(bnf)","(bnf)"},
69: {"bnfunit","(bnf)","(bnf)"},
70: {"bnfclassunit","(P)","(P,2)"},
71: {"bnfclassunit","(P)","(P,1)"},
72: {"bnfclassunit","(P)","(P)"},
73: {"quadclassunit","(D,c1,c2,g)","(D,,[c1,c2,g])"},
74: {"bnfinit","(P)","(P,2)"},
75: {"bnfinit","(P)","(P,1)"},
76: {"bnfinit","(P)","(P)"},
77: {"bnfnarrow","(bnf)","(bnf)"},
78: {"bnrclass","(bnf,ideal)","(bnf,ideal)"},
79: {"bnrclass","(bnf,ideal)","(bnf,ideal,1)"},
80: {"bnrclass","(bnf,ideal)","(bnf,ideal,2)"},
81: {"quadclassunit","(D)","(D)"},
82: {"sizebyte","(x)","(x)"},
83: _SAME,
84: _SAME,
85: {"contfrac","(x)","(x)"},
86: {"contfrac","(b,x)","(x,b)"},
87: _SAME,
88: {"charpoly","(x,y)","(x,y)"},
89: {"charpoly","(x,y)","(x,y,1)"},
90: {"charpoly","(x,y)","(x,y,2)"},
91: {"ellchangecurve","(x,y)","(x,y)"},
92: _SAME,
93: {"ellchangepoint","(x,y)","(x,y)"},
94: {"qfbclassno","(x)","(x)"},
95: {"qfbclassno","(x)","(x,1)"},
96: {"polcoeff","(x,s)","(x,s)"},
97: {"x*y","(x,y)",""},
98: {"component","(x,s)","(x,s)"},
99: {"polcompositum","(pol1,pol2)","(pol1,pol2)"},
100: {"polcompositum","(pol1,pol2)","(pol1,pol2,1)"},
101: {"qfbcompraw","(x,y)","(x,y)"},
102: _SAME,
103: {"bnrconductor","(a1)","(a1)"},
104: {"bnrconductorofchar","(bnr,chi)","(bnr,chi)"},
105: _SAME,
106: _SAME,
107: _SAME,
108: {"serconvol","(x,y)","(x,y)"},
109: _SAME,
110: {"core","(x)","(x,1)"},
111: _SAME,
112: {"coredisc","(x)","(x,1)"},
113: _SAME,
114: _SAME,
115: {"truncate","(x)","(x,&e)"},
116: {"polcyclo","(n)","(n)"},
117: {"factorback","(fa)","(fa)"},
118: {"bnfdecodemodule","(nf,fa)","(nf,fa)"},
119: {"poldegree","(x)","(x)"},
120: {"denominator","(x)","(x)"},
121: {"lindep","(x)","(x,-1)"},
122: _SAME,
123: {"matdet","(x)","(x)"},
124: {"matdet","(x)","(x,1)"},
125: {"matdetint","(x)","(x)"},
126: {"matdiagonal","(x)","(x)"},
127: _SAME,
128: _SAME,
129: _SAME,
130: _SAME,
131: _SAME,
132: {"poldisc","(x)","(x)"},
133: {"nfdisc","(x)","(x)"},
134: {"nfdisc","(x)","(x,2)"},
135: {"bnrdisc","(bnr,subgroup)","(bnr,subgroup)"},
136: {"bnrdisc","(bnr)","(bnr,,,2)"},
137: {"bnrdisclist","(bnf,list)","(bnf,list)"},
138: {"bnrdisclist","(bnf,arch,bound)","(bnf,bound,arch)"},
139: {"bnrdisclist","(bnf,bound)","(bnf,bound,,1)"},
140: {"bnrdisclist","(bnf,bound)","(bnf,bound)"},
141: {"bnrdisc","(bnr,subgroup)","(bnr,subgroup,,1)"},
142: {"bnrdisc","(bnr,subgroup)","(bnr,subgroup,,3)"},
143: _SAME,
144: {"divrem","(x,y)","(x,y)"},
145: {"sumdiv","(n,X,expr)","(n,X,expr)"},
146: {"mateigen","(x)","(x)"},
147: _SAME,
148: _SAME,
149: _SAME,
150: {"Euler","",""},
151: _SAME,
152: _SAME,
153: {"vecextract","(x,y)","(x,y)"},
154: {"factorial","(x)","(x)"},
155: {"factorcantor","(x,p)","(x,p)"},
156: {"factorff","(x,p,a)","(x,p,a)"},
157: {"factormod","(x,p)","(x,p)"},
158: _SAME,
159: {"nfbasis","(x,p)","(x,,p)"},
160: {"nfdisc","(x,p)","(x,,p)"},
161: {"polred","(x,p)","(x,,p)"},
162: {"polred","(x,p)","(x,2,p)"},
163: _SAME,
164: _SAME,
165: {"factorpadic","(x,p,r)","(x,p,r,1)"},
166: {"factor","(x,l,hint)","(x)"},
167: {"factor","(x,l,hint)","(x)"},
168: {"fibonacci","(x)","(x)"},
169: _SAME,
170: _SAME,
171: _SAME,
172: _SAME,
173: _SAME,
174: _SAME,
175: {"ffinit","(p,n)","(p,n)"},
176: _SAME,
177: {"polgalois","(x)","(x)"},
178: {"nfgaloisapply","(nf,aut,x)","(nf,aut,x)"},
179: {"nfgaloisconj","(nf)","(nf)"},
180: {"nfgaloisconj","(nf)","(nf,2)"},
181: {"nfgaloisconj","","(nf,1)"},
182: {"gammah","(x)","(x)"},
183: _SAME,
184: {"matsolve","(a,b)","(a,b)"},
185: {"matsolvemod","(M,D,Y)","(M,D,Y)"},
186: {"matsolvemod","(M,D,Y)","(M,D,Y,1)"},
187: _SAME,
188: _SAME,
189: _SAME,
190: _SAME,
191: _SAME,
192: {"ellglobalred","(x,y)","(x,y)"},
193: _REMOV,
194: {"qfbhclassno","(x)","(x)"},
195: {"ellheight","(e,x)","(e,x)"},
196: {"ellheight","(e,x)","(e,x,1)"},
197: {"mathnf","(x)","(x)"},
198: {"mathnf","(x)","(x,1)"},
199: _REMOV,
200: {"mathnfmod","(x,d)","(x,d)"},
201: {"mathnfmodid","(x,d)","(x,d)"},
202: {"mathnf","(x)","(x,3)"},
203: {"mathess","(x)","(x)"},
204: {"hilbert","(x,y)","(x,y)"},
205: {"mathilbert","(n)","(n)"},
206: {"hilbert","(x,y,p)","(x,y,p)"},
207: {"vector","(n,X,expr)","(n,X,expr)"},
208: _SAME,
209: {"I","",""},
210: _SAME,
211: {"idealaddtoone","(nf,list)","(nf,list)"},
212: {"idealaddtoone","(nf,x,y)","(nf,x,y)"},
213: _SAME,
214: {"idealappr","(nf,x)","(nf,x,1)"},
215: _SAME,
216: _SAME,
217: _SAME,
218: {"idealdiv","(nf,x,y)","(nf,x,y,1)"},
219: _SAME,
220: {"idealhnf","(nf,x)","(nf,x)"},
221: {"idealhnf","(nf,x)","(nf,x)"},
222: _SAME,
223: _SAME,
224: {"idealinv","(nf,x)","(nf,x,1)"},
225: _SAME,
226: _SAME,
227: {"ideallistarch","(nf,list,arch)","(nf,list,arch,1)"},
228: {"ideallist","(nf,list)","(nf,list,2)"},
229: {"ideallistarch","","(nf,list,arch,2)"},
230: {"ideallistarch","","(nf,list,arch,3)"},
231: {"ideallist","","(nf,list,3)"},
232: {"ideallist","(nf,bound)","(nf,bound)"},
233: {"ideallist","(nf,bound)","(nf,bound,1)"},
234: {"idealred","(nf,x,vdir)","(nf,x,vdir)"},
235: _SAME,
236: {"idealmul","(nf,x,y)","(nf,x,y,1)"},
237: _SAME,
238: _SAME,
239: {"idealpow","(nf,x,y)","(nf,x,y,1)"},
240: _SAME,
241: {"idealtwoelt","(nf,x,a)","(nf,x,a)"},
242: _SAME,
243: {"matid","(n)","(n)"},
244: _SAME,
245: _SAME,
246: {"matimage","(x)","(x)"},
247: {"matimage","(x)","(x,1)"},
248: {"matimagecompl","(x)","(x)"},
249: _SAME,
250: _REMOV,
251: _REMOV,
252: _REMOV,
253: {"incgam","(s,x,y)","(s,x,y)"},
254: {"matindexrank","(x)","(x)"},
255: {"vecsort","(x)","(x,,1)"},
256: {"nfinit","(pol)","(pol)"},
257: {"nfinit","(x)","(x,2)"},
258: {"nfinit","(x)","(x,3)"},
259: {"ellinit","(x)","(x)"},
260: {"zetakinit","(x)","(x)"},
261: {"intformal","(x,y)","(x,y)"},
262: {"matintersect","(x,y)","(x,y)"},
263: {"intnum","(x=a,b,s)","(x=a,b,s,1)"},
264: {"intnum","(x=a,b,s)","(x=a,b,s,2)"},
265: _SAME,
266: {"intnum","(x=a,b,s)","(x=a,b,s,3)"},
267: {"matinverseimage","(x,y)","(x,y)"},
268: {"matisdiagonal","(x)","(x)"},
269: {"isfundamental","(x)","(x)"},
270: {"nfisideal","(nf,x)","(nf,x)"},
271: {"nfisincl","(x,y)","(x,y)"},
272: {"nfisincl","(nf1,nf2)","(nf1,nf2,1)"},
273: {"polisirreducible","(x)","(x)"},
274: {"nfisisom","(x,y)","(x,y)"},
275: {"nfisisom","(x,y)","(x,y)"},
276: {"ellisoncurve","(e,x)","(e,x)"},
277: _SAME,
278: {"bnfisprincipal","(bnf,x)","(bnf,x,0)"},
279: {"bnfisprincipal","(bnf,x)","(bnf,x,2)"},
280: {"bnfisprincipal","(bnf,x)","(bnf,x)"},
281: {"bnfisprincipal","(bnf,x)","(bnf,x,3)"},
282: {"bnrisprincipal","(bnf,x)","(bnf,x)"},
283: _SAME,
284: {"ispseudoprime","(x)","(x)"},
285: {"sqrtint","(x)","(x)"},
286: {"setisset","(x)","(x)"},
287: {"issquarefree","(x)","(x)"},
288: _SAME,
289: {"bnfisunit","(bnf,x)","(bnf,x)"},
290: {"qfjacobi","(x)","(x)"},
291: {"besseljh","(n,x)","(n,x)"},
292: {"ellj","(x)","(x)"},
293: _REMOV,
294: {"besselk","(nu,x)","(nu,x)"},
295: {"besselk","(nu,x)","(nu,x,1)"},
296: {"matker","(x)","(x)"},
297: {"matker","(x)","(x,1)"},
298: {"matkerint","(x)","(x)"},
299: {"matkerint","(x)","(x,1)"},
1.2 ! noro 300: _REMOV,
1.1 noro 301: {"kronecker","(x,y)","(x,y)"},
302: _REMOV,
303: {"zetak","(nfz,s)","(nfz,s,1)"},
304: {"serlaplace","(x)","(x)"},
305: _SAME,
306: {"pollegendre","(n)","(n)"},
307: _SAME,
308: _SAME,
309: {"vecsort","(x)","(x,,2)"},
310: _SAME,
311: _SAME,
312: {"lindep","(x)","(x,1)"},
313: {"qflll","(x)","(x)"},
1.2 ! noro 314: _REMOV,
1.1 noro 315: {"qflll","(x)","(x,8)"},
316: {"qflllgram","(x)","(x)"},
1.2 ! noro 317: _REMOV,
1.1 noro 318: {"qflllgram","(x)","(x,8)"},
319: {"qflllgram","(x)","(x,1)"},
320: {"qflllgram","(x)","(x,4)"},
321: {"qflllgram","(x)","(x,5)"},
322: {"qflll","(x)","(x,1)"},
323: {"qflll","(x)","(x,2)"},
324: {"qflll","(x)","(x,4)"},
325: {"qflll","(x)","(x,5)"},
1.2 ! noro 326: _REMOV,
1.1 noro 327: {"log","(x)","(x)"},
328: _SAME,
329: {"elllocalred","(e)","(e)"},
330: _SAME,
331: {"log","(x)","(x,1)"},
332: {"elllseries","(e,s,N,A)","(e,s,A)"},
333: {"bnfmake","(sbnf)","(sbnf)"},
334: {"Mat","(x)","(x)"},
335: {"vecextract","(x,y,z)","(x,y,z)"},
336: {"ellheightmatrix","(e,x)","(e,x)"},
337: _SAME,
338: _SAME,
339: {"matrixqz","(x,p)","(x,-1)"},
340: {"matrixqz","(x,p)","(x,-2)"},
341: _SAME,
342: _SAME,
343: _SAME,
344: {"idealmin","(nf,ix,vdir)","(nf,ix,vdir)"},
345: {"qfminim","(x,bound,maxnum)","(x,bound,maxnum)"},
346: {"qfminim","(x,bound)","(x,bound,,1)"},
347: {"Mod","(x,y)","(x,y)"},
348: {"Mod","(x,y,p)","(x,y,1)"},
349: _SAME,
350: {"gcd","(x,y)","(x,y,1)"},
351: {"moebius","(n)","(n)"},
352: _SAME,
353: _SAME,
354: _SAME,
355: {"nfeltdiv","(nf,a,b)","(nf,a,b)"},
356: {"nfeltdiveuc","(nf,a,b)","(nf,a,b)"},
357: {"nfeltdivrem","(nf,a,b)","(nf,a,b)"},
358: {"nfhnf","(nf,x)","(nf,x)"},
359: {"nfhnfmod","(nf,x,detx)","(nf,x,detx)"},
360: {"nfeltmod","(nf,a,b)","(nf,a,b)"},
361: {"nfeltmul","(nf,a,b)","(nf,a,b)"},
362: {"nfeltpow","(nf,a,k)","(nf,a,k)"},
363: {"nfeltreduce","(nf,a,id)","(nf,a,id)"},
364: {"nfsnf","(nf,x)","(nf,x)"},
365: {"nfeltval","(nf,a,pr)","(nf,a,pr)"},
366: _SAME,
367: _SAME,
368: {"qfbnucomp","(x,y,l)","(x,y,l)"},
369: _SAME,
370: {"numerator","(x)","(x)"},
371: {"qfbnupow","(x,n)","(x,n)"},
372: {"O","(x)","(x)"},
373: _SAME,
374: {"ellordinate","(e,x)","(e,x)"},
375: {"znorder","(x)","(x)"},
376: {"ellorder","(e,x)","(e,x)"},
377: {"polredord","(x)","(x)"},
378: _SAME,
379: {"matpascal","(n)","(n)"},
380: {"qfperfection","(a)","(a)"},
381: {"numtoperm","(n,k)","(n,k)"},
382: {"permtonum","(vect)","(vect)"},
383: {"qfbprimeform","(x,p)","(x,p)"},
384: {"eulerphi","(x)","(x)"},
385: {"Pi","",""},
386: {"contfracpnqn","(x)","(x)"},
387: {"ellztopoint","(e,z)","(e,z)"},
388: {"polinterpolate","(xa,ya,x)","(xa,ya,p)"},
389: _SAME,
390: {"polred","(x)","(x,2)"},
391: _SAME,
392: {"polredabs","(x)","(x,1)"},
393: {"polredabs","(x)","(x,4)"},
394: {"polredabs","(x)","(x,8)"},
395: {"polredabs","(x)","(x,2)"},
396: _SAME,
397: {"variable","(x)","(x)"},
398: {"Pol","(x,v)","(x,v)"},
399: _SAME,
400: {"polylog","(m,x)","(m,x,1)"},
401: {"polylog","(m,x)","(m,x,2)"},
402: {"polylog","(m,x)","(m,x,3)"},
403: {"Polrev","(x,v)","(x,v)"},
404: {"polzagier","(n,m)","(n,m)"},
405: {"ellpow","(e,x,n)","(e,x,n)"},
406: {"qfbpowraw","(x,n)","(x,n)"},
407: {"precision","(x,n)","(x,n)"},
408: _SAME,
409: _SAME,
410: {"idealprimedec","(nf,p)","(nf,p)"},
411: _SAME,
412: {"znprimroot","(n)","(n)"},
413: {"idealprincipal","(nf,x)","(nf,x)"},
414: {"ideleprincipal","(nf,x)","(nf,x)"},
415: {"prod","(x,X=a,b,expr)","(X=a,b,expr,x)"},
416: _SAME,
417: _SAME,
418: {"prodinf","(X=a,expr)","(X=a,expr,1)"},
419: _SAME,
420: {"Qfb","(a,b,c)","(a,b,c)"},
421: {"Qfb","(a,b,c,d)","(a,b,c,d)"},
422: _SAME,
423: _SAME,
424: _SAME,
425: _SAME,
426: {"matrank","(x)","(x)"},
427: {"bnrclassno","(bnf,x)","(bnf,x)"},
428: {"bnrclassnolist","(bnf,liste)","(bnf,liste)"},
429: _SAME,
430: {"polrecip","(x)","(x)"},
431: {"qfbred","(x)","(x)"},
432: {"qfbred","(x)","(x)"},
433: {"qfbred","(x,d)","(x,2,,d)"},
434: {"poldiscreduced","(f)","(f)"},
435: {"quadregulator","(x)","(x)"},
436: _SAME,
437: {"polresultant","(x,y)","(x,y)"},
438: {"polresultant","(x,y)","(x,y,1)"},
439: {"serreverse","(x)","(x)"},
440: {"qfbred","(x)","(x,1)"},
441: {"qfbred","(x,d)","(x,3,,d)"},
442: {"round","(x)","(x,&e)"},
443: _SAME,
444: {"rnfdisc","(nf,pol)","(nf,pol)"},
445: _SAME,
446: {"rnfequation","(nf,pol)","(nf,pol,1)"},
447: {"rnfhnfbasis","(bnf,order)","(bnf,order)"},
448: _SAME,
449: _SAME,
450: _SAME,
451: _SAME,
452: _SAME,
453: {"polrootsmod","(x,p)","(x,p)"},
454: {"polrootsmod","(x,p)","(x,p,1)"},
455: {"polrootspadic","(x,p,r)","(x,p,r)"},
456: {"polroots","(x)","(x)"},
457: {"nfrootsof1","(nf)","(nf)"},
458: {"polroots","(x)","(x,1)"},
459: _SAME,
460: {"round","(x)","(x,&e)"},
461: {"Ser","(x,v)","(x,v)"},
462: {"Set","(x)","(x)"},
463: _SAME,
464: _SAME,
465: _SAME,
466: _SAME,
467: _SAME,
468: _SAME,
469: _SAME,
470: _SAME,
471: {"sigma","(k,x)","(x,k)"},
472: _SAME,
473: {"qfsign","(x)","(x)"},
474: {"bnfsignunit","(bnf)","(bnf)"},
475: {"factormod","(x,p)","(x,p,1)"},
476: _SAME,
477: _SAME,
478: _SAME,
479: {"sizedigit","(x)","(x)"},
480: {"nfbasis","(x)","(x,1)"},
481: {"bnfinit","(x)","(x,3)"},
482: {"nfdisc","(x)","(x,1)"},
483: {"factor","(x)","(x,0)"},
484: {"ellinit","(x)","(x,1)"},
485: {"polred","(x)","(x,1)"},
486: {"polred","(x)","(x,3)"},
487: {"matsnf","(x)","(x)"},
488: {"matsnf","(x)","(x,1)"},
489: {"matsnf","(x)","(x,4)"},
490: {"matsnf","(x)","(x,2)"},
491: _SAME,
492: {"vecsort","(x)","(x)"},
493: _SAME,
494: {"qfgaussred","(x)","(x)"},
495: _SAME,
496: {"gcd","(x,y)","(x,y,2)"},
497: {"polsturm","(x)","(x)"},
498: {"polsturm","(x,a,b)","(x,a,b)"},
499: {"polsubcyclo","(p,d)","(p,d)"},
500: {"ellsub","(e,a,b)","(e,a,b)"},
501: _SAME,
502: {"sum","(x,X=a,b,expr)","(X=a,b,expr,x)"},
503: _SAME,
504: {"sumalt","(X=a,expr)","(X=a,expr,1)"},
505: _SAME,
506: _SAME,
507: {"sumpos","(X=a,expr)","(X=a,expr,1)"},
508: {"matsupplement","(x)","(x)"},
509: {"polsylvestermatrix","(x,y)","(x,y)"},
510: _SAME,
511: _SAME,
512: {"elltaniyama","(e)","(e)"},
513: _SAME,
514: {"poltchebi","(n)","(n)"},
515: {"teichmuller","(x)","(x)"},
516: _SAME,
517: _SAME,
518: _REMOV,
519: _REMOV,
520: {"elltors","(e)","(e)"},
521: _SAME,
522: {"mattranspose","(x)","(x)"},
523: {"truncate","(x)","(x)"},
524: {"poltschirnhaus","(x)","(x)"},
525: _REMOV,
526: {"quadunit","(x)","(x)"},
527: _SAME,
528: _SAME,
529: {"Vec","(x)","(x)"},
530: {"vecsort","(x)","(x,,1)"},
531: {"vecsort","(x)","(x,,2)"},
532: _SAME,
533: _SAME,
534: _SAME,
535: _SAME,
536: {"vectorv","(n,X,expr)","(n,X,expr)"},
537: {"ellwp","(e)","(e)"},
538: {"weber","(x)","(x)"},
539: {"weber","(x)","(x,2)"},
540: _SAME,
541: {"ellpointtoz","(e,P)","(e,P)"},
542: _SAME,
543: _SAME,
544: {"ideallog","(nf,x,bid)","(nf,x,bid)"},
545: {"idealstar","(nf,I)","(nf,I)"},
546: {"idealstar","(nf,id)","(nf,id,1)"},
547: {"idealstar","(nf,id)","(nf,id,2)"},
548: _SAME,
549:
550: _SAME,
551: {"plotbox","(x,a)","(x,a)"},
552: {"plotcolor","(w,c)","(w,c)"},
553: {"plotcursor","(w)","(w)"},
554: _SAME,
555: {"plotdraw","(list)","(list)"},
556: {"plotinit","(w,x,y)","(w,x,y)"},
557: _SAME,
558: {"plotkill","(w)","(w)"},
559: {"plotlines","(w,x2,y2)","(w,x2,y2)"},
560: {"plotlines","(w,x2,y2)","(w,x2,y2)"},
561: {"plotmove","(w,x,y)","(w,x,y)"},
562: _SAME,
563: _SAME,
564: {"ploth","(X=a,b,expr)","(X=a,b,expr,1)"},
565: {"ploth","(X=a,b,expr)","(X=a,b,expr)"},
566: _SAME,
567: {"plotpoints","(w,x,y)","(w,x,y)"},
568: {"plotpoints","(w,x,y)","(w,x,y)"},
569: {"psdraw","(list)","(list)"},
570: {"psploth","(X=a,b,expr)","(X=a,b,expr)"},
571: {"psploth","(X=a,b,expr)","(X=a,b,expr,1)"},
572: {"psplothraw","(listx,listy)","(listx,listy)"},
573: {"printp","(x)","(x)"},
574: {"printp1","(x)","(x)"},
575: _SAME,
576: _SAME,
577: {"plotrbox","(w,dx,dy)","(w,dx,dy)"},
578: {"input","(x)","(x)"},
579: {"plotrline","(w,dx,dy)","(w,dx,dy)"},
580: {"plotrlines","(w,dx,dy)","(w,dx,dy,1)"},
581: {"plotrmove","(w,dx,dy)","(w,dx,dy)"},
582: {"plotrpoint","(w,dx,dy)","(w,dx,dy)"},
583: {"plotrpoints","(w,dx,dy)","(w,dx,dy)"},
584: {"plotscale","(w,x1,x2,y1,y2)","(w,x1,x2,y1,y2)"},
585: {"default","(n)","(realprecision,n)"},
586: {"default","(n)","(seriesprecision,n)"},
587: {"type","(x,t)","(x,t)"},
588: {"plotstring","(w,x)","(w,x)"},
589: _SAME,
590: {"printtex","(x)","(x)"},
591: _SAME
592: };
593:
594: /* If flag = 0 (default): check if s existed in 1.39.15 and print verbosely
595: * the answer.
596: * If flag > 0: silently return n+1 if function changed, 0 otherwise.
597: * (where n is the index of s in whatnowlist).
598: * If flag < 0: -flag-1 is the index in whatnowlist
599: */
600: int
601: whatnow(char *s, int flag)
602: {
603: int n;
604: char *def;
605: whatnow_t wp;
606: entree *ep;
607:
608: if (flag < 0) { n = -flag; flag = 0; }
609: else
610: {
611: if (flag && strlen(s)==1) return 0; /* special case "i" and "o" */
612: if (!is_identifier(s) || !is_entry_intern(s,funct_old_hash,NULL))
613: {
614: if (flag) return 0;
615: err(talker,"as far as I can recall, this function never existed");
616: }
617: n = 0;
618: do
619: def = (oldfonctions[n++]).name;
620: while (def && strcmp(def,s));
621: if (!def)
622: {
623: int m=0;
624: do
625: def = (functions_oldgp[m++]).name;
626: while (def && strcmp(def,s));
627: n += m - 1;
628: }
629: }
630:
631: wp=whatnowlist[n-1]; def=wp.name;
632: if (def == SAME)
633: {
634: if (flag) return 0;
635: err(talker,"this function did not change");
636: }
637: if (flag) return n;
638:
639: if (def == REMOV)
640: err(talker,"this function was suppressed");
641: if (!strcmp(def,"x*y"))
642: {
643: pariputsf(" %s is now called *.\n\n",s);
644: pariputsf(" %s%s ===> %s%s\n\n",s,wp.oldarg,wp.name,wp.newarg);
645: return 1;
646: }
647: ep = is_entry(wp.name);
648: if (!ep) err(bugparier,"whatnow");
649: pariputs("New syntax: "); term_color(c_ERR);
650: pariputsf("%s%s ===> %s%s\n\n",s,wp.oldarg,wp.name,wp.newarg);
651: term_color(c_HELP);
652: print_text(ep->help); pariputc('\n');
653: term_color(c_NONE); return 1;
654: }
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>