2011/5/16 Roger Hui <[email protected]>:
> I believe I have found and fixed the bug.
>
> The problem is in 2 f/\y , implemented by infix2 in file ap.c.
> by the expression (}:y) f (}.y) .  In certain cases, instead
> of explicitly doing }:y and }.y, the code constructs
> headers which point to the same data, thereby saving
> time and space.  The fix is to make the condition for the
> "certain cases" more stringent, viz., when f is a primitive
> atomic function.  This more stringent condition still
> covers 100.0% of the practically useful cases.
>
> Now if somebody demonstrates cases where 2 f/\y fails
> even for f an atomic function (+ - * >. etc.), I would
> dispense with the optimization, and just do (}:y) f (}.y).

>From this description, I imagine ]"0 could be used to work around the
problem for people using an older version of J?

(Will this fix also go into a J6 release?)

-- 
Raul
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to