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