Annotation of OpenXM_contrib/pari-2.2/COMPAT, Revision 1.2
1.1 noro 1: This file lists the incompatible changes between Version 2.x and older versions
2:
3: %%%%%%%%%%%%%%%%%%%%%%%%%%%% VERSION 2.2 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4:
5: * The calculator GP:
6: ====================
1.2 ! noro 7: - Default args for user defined functions now evaluated when function is
! 8: called (used to be: at definition time)
! 9: E.g f(x) = local(z = x); z.
! 10: Before: f(2) --> x
! 11: Now: f(2) --> 2
! 12:
! 13: - rnfisnorm() input format has changed. Older version was complicated and
! 14: only worked if rnfequation(bnf, p, 1)[3] == 0 [otherwise, crash].
! 15: Use rnfisnorminit() now.
1.1 noro 16:
17: * The library PARI:
18: ===================
19: - gsize() renamed to sizedigit() [conflict with gtk]
20: - hnfhavas removed (didn't work properly, hnflll provides an alternative)
1.2 ! noro 21: - real zeroes are now coded on 2 words. Beware of constructs like
! 22: t = cgetg(lg(x), t_REAL); gaffect(y, t). If x = 0, so will be t
! 23: - polgalois(): old format deprecated. New preferred format for result
! 24: has 3rd component giving numbering among all transitive subgroups of S_n
! 25: [ was ad hoc up to 7, as described above for n >= 8 ]. Old format is
! 26: still the default, but will eventually change. Use
! 27: default(new_galois_format, 1) or, in library mode, set global variable
! 28: new_galois_format to 1 to enable the new format.
! 29: - The nf structure output by nfinit has changed:
! 30: *) nf.zk is now T2-LLL-reduced, not in HNF wrt the power basis
! 31: *) the internal components of nf[5] have changed (MC and T2 not needed
! 32: anymore)
! 33: - polred & polredabs do not take a 'prec' argument anymore [was unused]
! 34: - gentimer / genmsgtimer have been removed. They are superseded by TIMER
! 35: and msgTIMER which are fully reentrant and easier to use.
! 36: - (undocumented) macros buch[gen | genfu | init | iniftu]
! 37: - rnfisnorm() prototype has changed [ + need to call rnfisnorminit first ]
1.1 noro 38:
39: %%%%%%%%%%%%%%%%%%%%%%%%%%%% VERSION 2.1 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
40:
41: * The calculator GP:
42: ====================
43: - most function names have changed (see misc/new.dic or use whatnow under GP)
44: - lowercase / uppercase letters distinguished.
45: - the syntax \var = value is not recognized anymore. Use standard
46: metacommands instead.
47: (setting the compatibility level "compatible" to 3, with "default" will give
48: you those three back).
49:
50: - strict parenthesis matching before executing the command
51: (set strictmatch to 0 to get old behaviour)
52:
53: - functions label / goto have been removed (use break/next/return instead).
54: - conjugation x_ has been removed. '_' can be freely used in identifiers.
55: - \k metacommand removed
56:
57: - result history is now cyclic (older results are erased when the maximal
58: size "histsize" is reached).
59: - the Set() function turns objects into strings (so that set functions are
60: able to treat arbitrary objects). Use eval to turn them back to GENs.
61: - the type() function returns a string and not a number.
62: - sum(X=a,b,...,x) yields x if b<a. Analogous statement for prod.
63:
64: * The library PARI:
65: ===================
66: - use symbolic type names (t_INT, etc.). Don't use any explicit type number
67: in your programs since these are liable to change (they have not, but will).
68: - the codewords of GEN objects have a different internal structure. The
69: components should only be accessed through the documented macros. When
70: creating codeword x[1] for the GEN x, use the eval* macros (the set* ones
71: don't fill the codeword completely).
72: - the following constant names have changed ("pari" prepended): C1, C2, C3, K,
73: K1, K2, K4. The constant C31 has disappeared.
74: - prec and defaultpadicprecision are no longer global. The latter has
75: disapeared.
76: - char *pariversion not set anymore (use the macros PARIVERSION/PARIINFO)
77: - LONG_IS_32BIT is never defined (test whether LONG_IS_64BIT is defined
78: or not).
79: - gen2str() renamed to GENtostr().
80: - gitoascii() suppressed, use GENtostr().
81: - init() renamed to pari_init().
82: - the macro mant() has been suppressed.
83: - imprimer() suppressed. output() is now a function and can be used under
84: all debuggers.
85: - the prototypes and behaviour of gredsp() and normalize() have changed.
86: They are not documented anymore.
87: - the install() function has been modified (use codes instead of valence).
88: - gpuigs only has two arguments.
89: - integ now takes two arguments, like deriv.
90: - setrand, getrand, getstack, gettime, glength return a C long, and not a GEN.
91: - pari_randseed no longer global, use setrand/getrand
92: - gerepile(ltop,lbot,0) no longer returns ltop - lbot
93: - nf[5][7] stored in two element form (was Z-basis) for faster inversion
94: - t_POL and t_POLMOD can be freely mixed as long as main variables are the
95: same (result is the expected POLMOD)
96:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>