From: SourceForge.net <no...@so...> - 2007-05-24 03:43:33
|
Bugs item #1724592, was opened at 2007-05-23 23:43 Message generated for change (Tracker Item Submitted) made by Item Submitter You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=104933&aid=1724592&group_id=4933 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: Lisp Core - Assume Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: Stavros Macrakis (macrakis) Assigned to: Stavros Macrakis (macrakis) Summary: sign(2.0*x) evaluates x too many times Initial Comment: aaa:'bbb$ bbb:'ccc$ ccc:23.5$ sign(aaa) => PNZ OK sign(bbb) => PNZ OK sign(2*aaa) => PNZ OK sign(1.0*aaa) => POS !!! sign(1.0*bbb) => POS !!! This is yet another case of EV being misused in the middle of code that has no business doing an evaluation, in this case in compar.lisp, function numer. Adding the noeval flag does not fix the problem -- though sign(1.0*aaa) is now PNZ, sign(1.0*bbb) is still POS. $float is better, though a fix is needed to $float for the 2^%pi case. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=104933&aid=1724592&group_id=4933 |