NB. These don't give the same result:
((10&#.^:_1) dd) -: "."0@":&.>dd
0
NB. But these do:
((10&#.^:_1)&.> dd) -: "."0@":&.>dd
1
NB. However,
6!:2 '(10&#.^:_1)&.> dd'
2.9129688
NB. Whereas
6!:2 '(''0123456789'' i. ":)&.>dd'
0.14360903
6!:2 '"."0@":&.>dd'
0.066792288
NB. and
(('0123456789' i. ":)&.>dd) -: "."0@":&.>dd
1
On Wed, Sep 1, 2010 at 9:08 PM, Marshall Lochbaum <
[email protected]> wrote:
> Wait just a second...
>
> dd=.1e5?2e9
> 6!:2 '(10&#.^:_1 )&.>dd'
> 3.31308
> 6!:2 '(''0123456789'' i. ":)&.>dd'
> 0.119448
> 6!:2 ' "."0@":&.>dd'
> 0.0710835
> 6!:2 '(10&#.^:_1) dd'
> 0.0532393
> 6!:2 ' "."0@":"0 dd'
> 0.0829183
>
> The fastest non-padded execution is actually ("."0@":), just as promised.
> (10&#.^:_1) is only faster for arrays because it doesn't have to be run
> with
> rank 0.
> Somebody resolve this quick--I accidentally typed ". instead of {. while
> looking at this!
>
> Marshall
>
>
> -----Original Message-----
> From: [email protected]
> [mailto:[email protected]] On Behalf Of Roger Hui
> Sent: Wednesday, September 01, 2010 8:28 PM
> To: Programming forum
> Subject: Re: [Jprogramming] Splitting an integer into its digits
>
> The second expression can be simplified to
> ('0123456789' i. ":)&.>dd
> which would make much it easier to understand and 50% faster.
>
> 10&#. b. _1
> ($&10@>:@(10&(<....@^.))@(1&>.)@(>./)@:|@, #: ]) :.(10&#.)
>
> reveals why 10&#.^:_1 is so much slower and points to substantial room for
> improvement if we decide to do something about it.
>
>
>
> ----- Original Message -----
> From: Devon McCormick <[email protected]>
> Date: Wednesday, September 1, 2010 17:03
> Subject: Re: [Jprogramming] Splitting an integer into its digits
> To: Programming forum <[email protected]>
>
> > dd=. 1e5?2e9
> > 6!:2 '(10&#.^:_1 )&.>dd'
> > 3.7797712
> > 6!:2 '((<''0123456789'')i.&>":&.>)&.>dd'
> > 0.15169945
> ----------------------------------------------------------------------
> 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