Paul, You have correctly identified the fact that (float i. float) is not special-cased in Dyalog APL (unless comparison tolerance is zero, in which case we DO hash it); we do a linear search and that is slow when the arrays get big. A public bashing on the J forum still isn't quite enough to get the Dyalog development team fired up about this, mostly because our imagination fails us as to what sort of (sensible) applications there are for fast fuzzy searching of floats.
If I got this right, your need for it actually arises from the fact that neither APL nor J take comparison tolerance into account when sorting floating-point values, probably for the same reason (cost seemed to outweigh the benefits). I think your comment that we have thereby contributed to rotting the brains of generations of APLers is *slightly* over the top :-). I think Olegs elegant solution WOULD have occurred to many APL programmers, in fact I seem to remember having seen this as a puzzle solution a decade or two ago. Congratulations to Roger on his excellent implementation! If someone comes up with a convincing set of examples to motivate further work on this case, we may change our minds (but please don't use the J forums for this). We ARE doing a significant amount of work on optimizing various cases in a number of primitives in the next release of Dyalog APL. Morten -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Sent: 6. juni 2007 17:48 To: General forum Subject: Re: [Jgeneral] Re: Challenge to expert J'ers Actually Roger was not aware of the definite problem with Dyalog APL's f{iota}f implementation which was highlighted in later posting. So his sentence would now probably contain more nuances. Paul Gauthier APL Software Developer - Senior [EMAIL PROTECTED] Phone: 312-739-3467 Fax: 312-739-3496 CheckFree. The Company that Powers Payment on the WebSM. http://www.checkfree.com/paybillsonline Brian Schott <[EMAIL PROTECTED]> Sent by: [EMAIL PROTECTED] 06/06/2007 07:10 AM Please respond to General forum <[email protected]> To General forum <[email protected]> cc Subject Re: [Jgeneral] Re: Challenge to expert J'ers Sorry to the forum and Roger. I found the referrent finally, and I suppose Roger is saying that that phrase was not the correct explanation. On Wed, 6 Jun 2007, Brian Schott wrote: + Roger, + + I cannot understand this post. First, I cannot find + the *previous* message to which you refer. Second, I cannot + tell what aspect of the previous excerpt you are "Not"ing. + + + On Fri, 1 Jun 2007, Roger Hui wrote: + + + > In J you just do /:/:y because grade on small + + > range integers takes linear time. + + + + Not, because it is the straightforward thing and + + your faithful implementor has taken care that you + + don't pay a penalty for it. + + (B=) <----------my "sig" Brian Schott Atlanta, GA, USA schott DOT bee are eye eh en AT gee em ae eye el DOT com http://schott.selfip.net/~brian/ ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
