From: SourceForge.net <no...@so...> - 2006-08-12 15:22:10
|
Bugs item #1202865, was opened at 2005-05-16 08:40 Message generated for change (Settings changed) made by robert_dodier You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=104933&aid=1202865&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 - Simplification Group: None Status: Open Resolution: None Priority: 5 Submitted By: Robert Dodier (robert_dodier) Assigned to: Nobody/Anonymous (nobody) Summary: tellsimp/tellsimpafter confused about noun/verb distinction Initial Comment: tellsimp and tellsimpafter are somewhat confused about the noun/verb distinction. The same rule name is constructed for both the noun and verb form of a function. (E.g., the rule is namd $FOORULE1 for both $FOO and %FOO.) However, the rule is associated with the operator name ($FOO or %FOO). I ran into this problem trying to make rules for "integrate". This has following observable effect: simp: false; tellsimpafter (foo(x), fooverb(x)); simp: true; foo(x); => fooverb(x); /* OK */ 'foo(x); => 'foo(x) /* Hmm ... */ simp: false; tellsimpafter ('foo(x), foonoun(x)); simp: true; foo (x); => foonoun(x) /* Hmm ...*/ 'foo(x); => foonoun(x) /* OK */ Either the noun and verb forms should (a) always be treated the same, or (b) always separately. (Behavior consistent with (a) is 'foo(x) => 'foo(x) in the first example, and foo(x) => foo(x) in the second. Behavior consistent with (b) is 'foo(x) => fooverb(x) in the first example, and foo(x) => foonoun(x) in the second.) My recommendation at this point is to treat noun and verb forms by the same rule always. This can be effected by adding code to tellsimp and tellsimpafter to construct the verb or noun form from the noun or verb (resp), and assign the rule to both. (The noun form of built-in operators is a little messy -- nounify ("+") => MPLUS, nounify("*") => MTIMES, etc. However, I recommend against special-casing built-in operators here.) ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=104933&aid=1202865&group_id=4933 |