plot2d premature evaluation
I'm marking this ticket as closed, as the topics raised here are now covered by other, more specific tickets: simplification of conditional expression branches is covered by bug #5006. simplification of block expression is covered by bug #5774. COERCE-FLOAT-FUN binds numer: true is covered by bug #5777.
COERCE-FLOAT-FUN binds numer, causing trouble with bfloat
block(...) arguments are simplified when block is not evaluated
I would think that calling the assign hook is the right thing to do. That way any constraints imposed on an ordinary assignment are also imposed on temporary assignments generated by block. For the cases at hand (fpprec and expop), that will make block([expop], ...) and block([fpprec], ...) trigger errors -- I think that's right.
On Tue, Nov 3, 2026 at 11:22 AM Robert Dodier robert_dodier@users.sourceforge.net wrote: The big picture here is that both if and plot2d (via COERCE-FLOAT-FUN) have a certain amount of do-what-I-mean heuristics built into them. At this point I think I am inclined to open separate tickets for if and plot2d / COERCE-FLOAT-FUN and close this one. Makes sense. A few random observations. (1) Stavros, it would help if you say what's the expected output from the plotting example with the function sc. I...
If I remember correctly, nusum is another implementation of Gosper's method, so we could try to use nusum to check the result of Gosper.
The big picture here is that both if and plot2d (via COERCE-FLOAT-FUN) have a certain amount of do-what-I-mean heuristics built into them. At this point I think I am inclined to open separate tickets for if and plot2d / COERCE-FLOAT-FUN and close this one. A few random observations. (1) Stavros, it would help if you say what's the expected output from the plotting example with the function sc. (2) Does makelist produce the expected result, e.g. makelist(sc(i), i, 10, 20)? (I ask because makelist...