#133 closed proposed feature (fixed)
Possible confusion with the new "elim" syntax
Reported by: | bulygin | Owned by: | hannes |
---|---|---|---|
Priority: | major | Milestone: | 3-1-1 |
Component: | singular-libs | Version: | 3-1-0 |
Keywords: | elim, syntax | Cc: | greuel |
Description
The problem I faced recently was with the new "elim" syntax. Namely, I ran my "old" Singular program with 3-1-0 and the result was absolutely different (and false) from the one I obtained with 3-0-4. On my computer with 3-0-4 the program ran with no problems. It took me some 30 minutes to find out what the problem was (the code is approx. 1500 lines). So the probelm I had is that the old syntax for "elim" was "elim(id,n,m)" and the new one is "elim(id,arg[,s])". So one has to write "elim(id,n..m)" now.
The problem with old/new syntax transition is that elim.lib simply ignores the last integer m and eliminates variable n with a default procedure.
I propose at least to raise a Warning in this case: the third parameter now should be string from "std", "slimgb", and "withWeigts". So the user should be informed that his/her third parameter does not match those (this is also the case when one makes a typo like "witWeights", elim.lib does not notice it now and proceeds in a default way).
Although the change in syntax is declared in "Release news", I think that users may overlook or even disregard these notes and have problems with their "old" Singular code pieces that invole "elim".
additionla syntax check added for elim. By the way: if you do not have special reasons for elim, prefer eliminate.