Bill Allombert on Thu, 13 Nov 2003 00:08:24 +0100


[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]

Re: Description system TODO list


Hello pari-dev,

I would like to make a check point of the status of PARI 2.2.7

> > 3) 'make install' should install sufficient data to build GP2C
> > in a fixed location:
> > dft.Config.in,src/desc/Def and probably src/desc/PARI/822.pm.

This was done two day ago.

> [BTW, if a perl expert could review the perl scripts to tell us
> what version of perl is required and what we can do about this,
> I will appreciate greatly.]
TODO, but not critical for me

> > 4) Make GP2C to use the above.
Done.

> > 6) Add the Description: material in GP2C to GP.
> Partly done, but there still some missing data:
> 1) Operators (+,-,&&,etc.) definition.
> 2) Member functions.
> 3) extra GP2C function.
> 4) internal GP2C interface.

Done.

> 1) I propose we add a directory symbolic_operators
> with file name named after the name of the PARI function without the g prefix.
> (add, sub, etc.). Inside we use the GP2C name of the operator (_!,_+_)
> as Name:. This avoid having non alphanumeric characters in filename.
> (And anyway _/_ is not a valid UNIX filename).

This was done.

> 2) I would like we chage the way member functions are handled inside
> GP to be just regular function named _.xxx in the database.
> When a.xxx is called, gp look up _.xxx in the database and call it.
> This would allow to install member function directly with install()
> and simplify handling a bit. In particular member function will not
> need to live in a new Class:

This was reverted due to lack of time. member functions live in a 
separate class and generae a separate header file members.h.

> 3) extra GP2C functions. They are functions usefull with gp2c but close
> to noop with GP, like gcopy. I will add them in a new class, though it
> would be nice to be able to activate them under GP for testing GP
> scripts that use them. Class: gp2c
Not critical

> > 7) Document the Description: field format.
Not critical.

Unfortunately a new problem came up:

the funclist mechanism to detect change in the function database has
the nasty side effect of triggering a rebuild of the pari.desc file
on fresh tree extracted from tarball (made with make distrib not
by ViewCVS). This is a problem if perl is not available.

The best fix would be to write the funclist in a portable format so
that the rebuild of this file lead to the same result on any hosts.

Unfortunately the current
ls -l $src/functions/*/* > $src/funclist.tmp
Does not achieve that (ls -l format is not portable).

Cheers,
Bill.