From: SourceForge.net <no...@so...> - 2007-05-01 12:49:22
|
Bugs item #1710604, was opened at 2007-05-01 07:49 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=1710604&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 Group: None Status: Open Resolution: None Priority: 1 Private: No Submitted By: Barton Willis (willisbl) Assigned to: Nobody/Anonymous (nobody) Summary: simple_equal Initial Comment: simple_equal has a line of bogus and unreachable code (defined in mload of all places) (defun $simple_equal (f g) "checks if equal up to simp flags" (cond ((quote-simple-equal f g)) ((quote-simple-equal g f)) ((and (numberp f) (numberp g) (or (eql f g)) (< (- f g) 1.0e-4))) <-- never happens Also, simple_equal isn't documented. It's likely that simple_equal isn't needed, but it's nice that it (apparently) tests for equality without converting CRE expressions to general form. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=104933&aid=1710604&group_id=4933 |
From: SourceForge.net <no...@so...> - 2007-05-01 18:49:55
|
Bugs item #1710604, was opened at 2007-05-01 08:49 Message generated for change (Comment added) made by macrakis You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=104933&aid=1710604&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 Group: None Status: Open Resolution: None Priority: 1 Private: No Submitted By: Barton Willis (willisbl) Assigned to: Nobody/Anonymous (nobody) Summary: simple_equal Initial Comment: simple_equal has a line of bogus and unreachable code (defined in mload of all places) (defun $simple_equal (f g) "checks if equal up to simp flags" (cond ((quote-simple-equal f g)) ((quote-simple-equal g f)) ((and (numberp f) (numberp g) (or (eql f g)) (< (- f g) 1.0e-4))) <-- never happens Also, simple_equal isn't documented. It's likely that simple_equal isn't needed, but it's nice that it (apparently) tests for equality without converting CRE expressions to general form. ---------------------------------------------------------------------- >Comment By: Stavros Macrakis (macrakis) Date: 2007-05-01 14:49 Message: Logged In: YES user_id=588346 Originator: NO The whole piece of code is weird. The (or...) clause was presumably intended to be (or (eql f g) (< (- f g) 1.0e-4)), but that would be pretty ridiculous code, since it would make 0.0 == 1.0 but 1.0 /== 0.0. Fixing that with (abs (- f g)) would make 1.0e-5 == 1.0e-100. The rat case relies on the varlists being the same; is that desired? simple_equal(rat(x,x,y),rat(x,y,x)) => false. The quote case is completely weird; not clear what it is trying to do: simple_equal( '('(y+1)), '('(x+2)) ) => true (!!!!) simple_equal( '('(y+1)), '('(2)) ) => Lisp error Simple_equal seems to be used by run_testsuite to see if actuals match expected. It makes me a bit nervous in that role, but it makes me even more nervous to see it exposed to users as a $-function. Let's rename it to simple-equal.... ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=104933&aid=1710604&group_id=4933 |
From: SourceForge.net <no...@so...> - 2007-05-31 11:44:21
|
Bugs item #1710604, was opened at 2007-05-01 07:49 Message generated for change (Comment added) made by willisbl You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=104933&aid=1710604&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 Group: None >Status: Closed Resolution: None Priority: 1 Private: No Submitted By: Barton Willis (willisbl) Assigned to: Nobody/Anonymous (nobody) Summary: simple_equal Initial Comment: simple_equal has a line of bogus and unreachable code (defined in mload of all places) (defun $simple_equal (f g) "checks if equal up to simp flags" (cond ((quote-simple-equal f g)) ((quote-simple-equal g f)) ((and (numberp f) (numberp g) (or (eql f g)) (< (- f g) 1.0e-4))) <-- never happens Also, simple_equal isn't documented. It's likely that simple_equal isn't needed, but it's nice that it (apparently) tests for equality without converting CRE expressions to general form. ---------------------------------------------------------------------- >Comment By: Barton Willis (willisbl) Date: 2007-05-31 06:44 Message: Logged In: YES user_id=895922 Originator: YES Fixed in mload CVS revision 1.43. The simple_equal function has been deleted. ---------------------------------------------------------------------- Comment By: Stavros Macrakis (macrakis) Date: 2007-05-01 13:49 Message: Logged In: YES user_id=588346 Originator: NO The whole piece of code is weird. The (or...) clause was presumably intended to be (or (eql f g) (< (- f g) 1.0e-4)), but that would be pretty ridiculous code, since it would make 0.0 == 1.0 but 1.0 /== 0.0. Fixing that with (abs (- f g)) would make 1.0e-5 == 1.0e-100. The rat case relies on the varlists being the same; is that desired? simple_equal(rat(x,x,y),rat(x,y,x)) => false. The quote case is completely weird; not clear what it is trying to do: simple_equal( '('(y+1)), '('(x+2)) ) => true (!!!!) simple_equal( '('(y+1)), '('(2)) ) => Lisp error Simple_equal seems to be used by run_testsuite to see if actuals match expected. It makes me a bit nervous in that role, but it makes me even more nervous to see it exposed to users as a $-function. Let's rename it to simple-equal.... ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=104933&aid=1710604&group_id=4933 |