Probably not countable. --- bittest(x:small,y:small) is wrong if y>31 --- x:small%y:small cannot use % in C because -2%3 would be wrong Things that are poorly implemented: ---------------------------------- --- Array (vector, matrix) may be disconnected in the stack. --- vector() and matrix() do not garbage collect. --- Garbage collecting should always be done after a loop. --- Code generated for "a=if(b,c,d)" constructs is ugly. --- user-defined member functions should be inlined Things that are not implemented: -------------------------------- --- a[b,]+=c --- issquare(4,&a[b,]) --- Numerical derivative because it is static to anal.c --- Embedded function definitions. f(x)=g(y)=x+y --- Complex statement like sumalt, etc... No interface in the library. Discrepancy between gp2c and gp: -------------------------------- --- =\n= is allowed by gp, but not by gp2c. Don't cry. --- Spaces in middle of term like (a b==ab) are not allowed. Be sensible. --- gp2c does not allow functions named local() to be called. --- "error" output PARI errors, not user errors. --- gp2c is generally more lenient than gp about syntax. --- Do not catch misuse of GP 'global()' vars. --- Scope of variable after function call are not the same in GP and in C. This is very problematic. --- Use of small may lead to overflow problems. --- return() can return 0 instead of nothing.