Karim BELABAS on Mon, 22 Nov 1999 15:47:51 +0100 (MET) |
[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]
Re: Turning a sequence of expr into expr |
> [Bill:] >> ? ?ploth >> ploth(X=a,b,expr,{flags=0},{n=0}): >> ^^^^ >> ? ?for >> for(X=a,b,seq): >> ^^^ >> >> Only true control statements handle seq ,if,forxxx, while,until >> but not sumxxx,prodx,solve,intnum etc.. > [Ilya:] > Then this should be marked in the "prototype", and the parser should > emit a syntax error in such a situation. The simplest way to do it is > to make lisexpr() to die if it finds ';' at the end, and make lisseq() > use a clone lisexpr_seqok() instead. I introduced a new parser code for the function "prototypes" (from GP point of view). Namely 'E' for an argument which is a single expression (read by lisexpr()). 'I' remains the same and accepts a sequence of statements. All genuine control statements + the constructors (vector/matrix) accept a seq. All others expect an expr. [ I believe I have correctly updated the numeric code for Math::Pari ] Karim. P.S: 2.0.18 is forthcoming, so no patches. The CVS repository is up-to-date, though. __ Karim Belabas email: Karim.Belabas@math.u-psud.fr Dep. de Mathematiques, Bat. 425 Universite Paris-Sud Tel: (00 33) 1 69 15 57 48 F-91405 Orsay (France) Fax: (00 33) 1 69 15 60 19 -- PARI/GP Home Page: http://hasse.mathematik.tu-muenchen.de/ntsw/pari/