Without prepending all possible cases you can get unexpected short lists.
For example, in the case where f=:* , if there are no zero values in the
argument then the result will only contain two items instead of the expected
three. The expected zero item would be missing instead of being an empty
zero item. This would be another complication to deal with in addition to
the order of the results.

On Thu, Sep 23, 2010 at 8:55 AM, Devon McCormick <devon...@gmail.com> wrote:

> I like the prepending idea because it makes explicit the expected domain
> and
> puts any unexpected elements (unlikely in the case of monadic "*" - except
> if complex numbers sneak in) at the end where they are out of the way but
> easy to find.
>
> Just now, checking the results of signum on edge conditions, I was
> intrigued
> to find that "_1 0 1 -: *__ _. _".
>
> On Thu, Sep 23, 2010 at 9:24 AM, R.E. Boss <r.e.b...@planet.nl> wrote:
>
> > I agree. First comes correctness, then performance, then elegance.
> >
> >
> > R.E. Boss
> >
> >
> > > -----Oorspronkelijk bericht-----
> > > Van: programming-boun...@jsoftware.com [mailto:programming-
> > > boun...@jsoftware.com] Namens Brian Schott
> > > Verzonden: donderdag 23 september 2010 14:41
> > > Aan: Programming forum
> > > Onderwerp: Re: [Jprogramming] Classification problem
> > >
> > > I agree that this solution is elegant, but for a large data set I
> > > assume that Raul's idea of prepending and then dropping 3 elements
> > > would be more efficient. Don't you, too?
> > >
> > >   (<@}./.~ *) _1 0 1,data
> > >
> > > On Thu, Sep 23, 2010 at 8:26 AM, R.E. Boss <r.e.b...@planet.nl> wrote:
> > > > One of the more elegant solutions is
> > > >
> > > >   ((/:&(* </. ])) *) data
> > > > +---------------+---+-----+
> > > > |_3 _1 _10 _2 _4|0 0|1 1 6|
> > > > +---------------+---+-----+
> > > >
> > > >
> > > > R.E. Boss
> > > >
> > > >
> > > >> -----Oorspronkelijk bericht-----
> > > >> Van: programming-boun...@jsoftware.com [mailto:programming-
> > > >> boun...@jsoftware.com] Namens Marshall Lochbaum
> > > >> Verzonden: woensdag 22 september 2010 23:57
> > > >> Aan: Programming forum
> > > >> Onderwerp: Re: [Jprogramming] Classification problem
> > > >>
> > > >> It looks to me like the most terse way is
> > > >> ((</. /: ~...@[)~ f) data
> > > >>
> > > >> Although this computes the nub twice, unlike some earlier solutions.
> > > >>
> > > >> Marshall
> > > >>
> > > >> ________________________________________
> > > >> From: programming-boun...@jsoftware.com [programming-
> > > >> boun...@jsoftware.com] On Behalf Of Raul Miller [
> > rauldmil...@gmail.com]
> > > >> Sent: Wednesday, September 22, 2010 3:29 PM
> > > >> To: Programming forum
> > > >> Subject: Re: [Jprogramming] Classification problem
> > > >>
> > > >> Note, if * is the universe of interesting
> > > >> functions (if it does not need to be generic) then
> > > >> I would be tempted to use a variation on Dan's
> > > >> second suggestion:
> > > >>
> > > >>    (<@}./.~ *) _1 0 1,data
> > > >>
> > > >> Note that this also preserves the relative
> > > >> ordering of the data items.
> > > >>
> > > >> --
> > > >> Raul
> > > >>
> ----------------------------------------------------------------------
> > > >> 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
> > > >
> > >
> > >
> > >
> > > --
> > > (B=) <-----my sig
> > > Brian Schott
> > > ----------------------------------------------------------------------
> > > For information about J forums see http://www.jsoftware.com/forums.htm
> >
> > ----------------------------------------------------------------------
> > For information about J forums see http://www.jsoftware.com/forums.htm
> >
>
>
>
> --
> Devon McCormick, CFA
> ^me^ at acm.
> org is my
> preferred e-mail
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
>
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to