Ilya Zakharevich on Tue, 8 Apr 2003 03:46:40 -0700 |
[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]
Re: [PATCH CVS] broken proto |
On Tue, Apr 08, 2003 at 11:46:08AM +0200, Bill Allombert wrote: > > a) Why generate them when they are already there? > Because they are never correct. Not in my experience. Time to time correct, time to time not. ;-) > > b) *Where* to store the values? > Where you want. If it is really important for you, we can keep > the field, just filled with 0. I take back 'b'. Somehow I was thinking that the field is used during each funtion call. Actually, it is used only when a corresponding "Perl function" is created; this is not a time-critical situation. So (at least theoretically), one could use whatever mean possible to recognize the known to Math::Pari interfaces. But the implementation will take some time which I would better spand on something else... > > c) If you can answer (a) and (b), who is going to implement this? > > (Although with Math::PariBuild, this may be not that complicated) > You already implemented it. No, I did not. It is not complicated, but with all bug-chasing and testing, it still is a significant time sink. Basically, there are circa 50 of valences which are special cased in Pari.xs (look for interface22() etc.). The list is present in Math::PariBuild. One needs to translate this list to a big switch() tree which would translate, e.g., the string "GG" to 22. But newer Perls already have a module (XS::something) to generate such switch statements. Hope this helps, Ilya